Related: tdf#142704 ReadStringHook may not be set in testing configurations
Change-Id: Iab2cd0cccb781a39af7b9315ccf8c242a2cc49a9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122438
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx
index 53ab57a..3820515 100644
--- a/vcl/unx/gtk3/gtkinst.cxx
+++ b/vcl/unx/gtk3/gtkinst.cxx
@@ -21396,14 +21396,17 @@ private:
}
#if !GTK_CHECK_VERSION(4, 0, 0)
// tdf#142704 %PRODUCTNAME shown in extended tips
AtkObject* pAtkObject = gtk_widget_get_accessible(pWidget);
const char* pDesc = pAtkObject ? atk_object_get_description(pAtkObject) : nullptr;
if (pDesc && pDesc[0])
if (m_pStringReplace)
{
OUString aDesc(pDesc, strlen(pDesc), RTL_TEXTENCODING_UTF8);
aDesc = (*m_pStringReplace)(aDesc);
atk_object_set_description(pAtkObject, OUStringToOString(aDesc, RTL_TEXTENCODING_UTF8).getStr());
// tdf#142704 %PRODUCTNAME shown in extended tips
AtkObject* pAtkObject = gtk_widget_get_accessible(pWidget);
const char* pDesc = pAtkObject ? atk_object_get_description(pAtkObject) : nullptr;
if (pDesc && pDesc[0])
{
OUString aDesc(pDesc, strlen(pDesc), RTL_TEXTENCODING_UTF8);
aDesc = (*m_pStringReplace)(aDesc);
atk_object_set_description(pAtkObject, OUStringToOString(aDesc, RTL_TEXTENCODING_UTF8).getStr());
}
}
#endif
@@ -21411,7 +21414,7 @@ private:
if (GTK_IS_BUTTON(pWidget))
{
GtkButton* pButton = GTK_BUTTON(pWidget);
if (m_pStringReplace != nullptr)
if (m_pStringReplace)
{
OUString aLabel(get_label(pButton));
if (!aLabel.isEmpty())
@@ -21424,7 +21427,7 @@ private:
else if (GTK_IS_CHECK_BUTTON(pWidget))
{
GtkCheckButton* pButton = GTK_CHECK_BUTTON(pWidget);
if (m_pStringReplace != nullptr)
if (m_pStringReplace)
{
OUString aLabel(get_label(pButton));
if (!aLabel.isEmpty())
@@ -21437,7 +21440,7 @@ private:
else if (GTK_IS_LABEL(pWidget))
{
GtkLabel* pLabel = GTK_LABEL(pWidget);
if (m_pStringReplace != nullptr)
if (m_pStringReplace)
{
OUString aLabel(get_label(pLabel));
if (!aLabel.isEmpty())
@@ -21449,7 +21452,7 @@ private:
else if (GTK_IS_TEXT_VIEW(pWidget))
{
GtkTextView* pTextView = GTK_TEXT_VIEW(pWidget);
if (m_pStringReplace != nullptr)
if (m_pStringReplace)
{
GtkTextBuffer* pBuffer = gtk_text_view_get_buffer(pTextView);
GtkTextIter start, end;
@@ -21467,7 +21470,8 @@ private:
}
else if (GTK_IS_WINDOW(pWidget))
{
if (m_pStringReplace != nullptr) {
if (m_pStringReplace)
{
GtkWindow* pWindow = GTK_WINDOW(pWidget);
set_title(pWindow, (*m_pStringReplace)(get_title(pWindow)));
if (GTK_IS_MESSAGE_DIALOG(pWindow))