i18n: mark strings in code for translation

Marks all string in the code to be translated with gettext macros.
POTFILES.in is updated to only contain source files with translatable strings.
po/README instructions are updated so that xgettext finds all the used macros.

C_() is used to give context to a translatable string.

Issue: #78928
Change-Id: I27bd91ff12a9913ac0d41842e449daf73197d96b
Signed-off-by: Guillaume Roguez <guillaume.roguez@savoirfairelinux.com>
diff --git a/src/backends/edscontactbackend.cpp b/src/backends/edscontactbackend.cpp
index 6f8f035..e8018b1 100644
--- a/src/backends/edscontactbackend.cpp
+++ b/src/backends/edscontactbackend.cpp
@@ -30,6 +30,7 @@
 
 #include "edscontactbackend.h"
 
+#include <glib/gi18n.h>
 #include <person.h>
 #include <personmodel.h>
 #include <contactmethod.h>
@@ -194,10 +195,10 @@
         auto addressbook = e_source_get_display_name(source);
 
         gchar *name = g_strdup_printf("%s (%s)", addressbook, backend);
-        name_ = QObject::tr(name);
+        name_ = name;
         g_free(name);
     } else
-        name_ = QObject::tr("Unknown EDS addressbook");
+        name_ = _("Unknown EDS addressbook");
 }
 
 EdsContactBackend::~EdsContactBackend()
@@ -217,7 +218,7 @@
 
 QString EdsContactBackend::category() const
 {
-    return QObject::tr("Contacts");
+    return C_("Backend type", "Contacts");
 }
 
 bool EdsContactBackend::isEnabled() const