https://bugs.documentfoundation.org/show_bug.cgi?id=155757

--- Comment #22 from Aron Budea <[email protected]> ---
I might've misunderstood, and there're more parts to this problem, but I'm
fairly sure the reason why the colors aren't showing in French language is what
I described.

This is the assert:
assert(m_xLbCond1->find_text(aStrBackgroundColor) != -1);
https://opengrok.libreoffice.org/xref/core/sc/source/ui/dbgui/filtdlg.cxx?r=d84291f5#117


There are a couple of comparisons of one string with the other (the strings are
described in comment 18), like this:

OUString sSelectedCondition = maCondLbArr[nPos]->get_active_text();
if (sSelectedCondition == aStrFontColor)
    aColors = pList->maFilterEntries.getTextColors();
else if (sSelectedCondition == aStrBackgroundColor)
    aColors = pList->maFilterEntries.getBackgroundColors();
https://opengrok.libreoffice.org/xref/core/sc/source/ui/dbgui/filtdlg.cxx?r=d84291f5#648


It would be fairly easy to make the code do case-insensitive comparison as a
"hack", which would solve this and similar cases, but there are also searches
like the assert itself, and eg. this that tries to find the text among the
items that'd require more complex workarounds that can be simply solved by
fixing the translation:

nCondPos = maCondLbArr[i]->find_text(
    rEntry.IsQueryByTextColor() ? aStrFontColor : aStrBackgroundColor);
https://opengrok.libreoffice.org/xref/core/sc/source/ui/dbgui/filtdlg.cxx?r=d84291f5#1454

The string itself matters for none of these cases, the problem is only due to
them being different.

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to