aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Tari <robert@tari.in>2021-07-02 02:01:24 +0200
committerRobert Tari <robert@tari.in>2021-07-05 00:44:12 +0200
commitb5996d6441811eda94b738e79b4d673f3375e6f0 (patch)
tree7a557412defe3e3c1833746e07b369487250a957
parentb2d8ad98b4c6360d8b67faf67b1a5f20d4de8f2d (diff)
downloadayatana-indicator-datetime-b5996d6441811eda94b738e79b4d673f3375e6f0.tar.gz
ayatana-indicator-datetime-b5996d6441811eda94b738e79b4d673f3375e6f0.tar.bz2
ayatana-indicator-datetime-b5996d6441811eda94b738e79b4d673f3375e6f0.zip
Drop myself.[h|cpp]
-rw-r--r--include/datetime/myself.h62
-rw-r--r--src/myself.cpp79
2 files changed, 0 insertions, 141 deletions
diff --git a/include/datetime/myself.h b/include/datetime/myself.h
deleted file mode 100644
index 67e938d..0000000
--- a/include/datetime/myself.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright 2016 Canonical Ltd.
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3, as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranties of
- * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
- * PURPOSE. See the GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * Authors:
- * Renato Araujo Oliveira Filho <renato.filho@canonical.com>
- */
-
-#ifndef INDICATOR_DATETIME_MYSELF_H
-#define INDICATOR_DATETIME_MYSELF_H
-
-#include <core/property.h>
-
-#include <string>
-#include <set>
-#include <memory.h>
-#include <glib.h>
-
-typedef struct _AgManager AgManager;
-
-namespace ayatana {
-namespace indicator {
-namespace datetime {
-
-class Myself
-{
-public:
- Myself();
-
- const core::Property<std::set<std::string>>& emails()
- {
- return m_emails;
- }
-
- bool isMyEmail(const std::string &email);
-
-private:
- std::shared_ptr<AgManager> m_accounts_manager;
- core::Property<std::set<std::string> > m_emails;
-
- static void on_accounts_changed(AgManager*, guint, Myself*);
- void reloadEmails();
-
-};
-
-
-} // namespace datetime
-} // namespace indicator
-} // namespace ayatana
-
-#endif // INDICATOR_DATETIME_MYSELF_H
diff --git a/src/myself.cpp b/src/myself.cpp
deleted file mode 100644
index 9c02054..0000000
--- a/src/myself.cpp
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Copyright 2016 Canonical Ltd.
- *
- * This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3, as published
- * by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranties of
- * MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
- * PURPOSE. See the GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * Authors:
- * Renato Araujo Oliveira Filho <renato.filho@canonical.com>
- */
-
-#include "datetime/myself.h"
-
-#if GLIB_CHECK_VERSION(2, 66, 0)
- #include <libaccounts-glib.h>
-#else
- #include <libaccounts-glib/accounts-glib.h>
-#endif
-
-#include <algorithm>
-
-namespace ayatana {
-namespace indicator {
-namespace datetime {
-
-Myself::Myself()
- : m_accounts_manager(ag_manager_new(), g_object_unref)
-{
- reloadEmails();
- g_object_connect(m_accounts_manager.get(),
- "signal::account-created", on_accounts_changed, this,
- "signal::account-deleted", on_accounts_changed, this,
- "signal::account-updated", on_accounts_changed, this,
- nullptr);
-}
-
-bool Myself::isMyEmail(const std::string &email)
-{
- return m_emails.get().count(email) > 0;
-}
-
-void Myself::on_accounts_changed(AgManager *, guint, Myself *self)
-{
- self->reloadEmails();
-}
-
-void Myself::reloadEmails()
-{
- std::set<std::string> emails;
-
- auto manager = m_accounts_manager.get();
- auto ids = ag_manager_list(manager);
- for (auto l=ids; l!=nullptr; l=l->next)
- {
- auto acc = ag_manager_get_account(manager, GPOINTER_TO_UINT(l->data));
- if (acc) {
- auto account_name = ag_account_get_display_name(acc);
- if (account_name != nullptr)
- emails.insert(account_name);
- g_object_unref(acc);
- }
- }
- ag_manager_list_free(ids);
-
- m_emails.set(emails);
-}
-
-} // namespace datetime
-} // namespace indicator
-} // namespace ayatana
-