mate-desktop / mate-media

Media tools for MATE
https://mate-desktop.org
GNU General Public License v2.0
19 stars 25 forks source link

applet: Do not override the process' text domain #205

Closed cwendling closed 1 year ago

cwendling commented 1 year ago

When loaded as in-process applet, we must not call textdomain() or we will override mate-panel's text domain. Instead, properly use gi18n-lib.h header that provides the same API but uses the compile-time GETTEXT_PACKAGE value for each call.

Fixes #203.

cwendling commented 1 year ago

Normally everything the applet use is still translated. If we want, we could also use this technique for everything in mate-media, not just the applet. It should not be required, but OTOH it could potentially make it simpler if the applet starts to use more of the other GVC files.

lukefromdc commented 1 year ago

Also, I now know the translations work in both the applet and the main menus with this applied and the do not disturb applet not in the panel

cwendling commented 1 year ago

I just force-pushed removing more useless code that mate-panel's *FACTORY macros actually already deal with.

lukefromdc commented 1 year ago

applet and main menus both show expected translations with this installed. We have one spot in the volume control dialog that isn't being translated, as shown below. Wonder if that comes from this package or maybe from mate-mixer though? Not_Translated

cwendling commented 1 year ago

We have one spot in the volume control dialog that isn't being translated, as shown below. Wonder if that comes from this package or maybe from mate-mixer though?

$ git grep -C1 "Balance" po/es_AR.po
po/es_AR.po-#: mate-volume-control/gvc-balance-bar.c:329
po/es_AR.po:msgid "_Balance:"
po/es_AR.po-msgstr ""

AKA just missing translation.