diff options
author | Robert Tari <robert@tari.in> | 2021-07-02 02:01:24 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2021-08-29 14:37:39 +0200 |
commit | e69137d907e884e23e77ee0e5550ccb9faa78d37 (patch) | |
tree | 1ac0fd1e8062a05450101c9297f3d1c006c2c08a /src | |
parent | 11d4b57fd24e8661ab60a09980e4cad13f4e15d7 (diff) | |
download | ayatana-indicator-datetime-e69137d907e884e23e77ee0e5550ccb9faa78d37.tar.gz ayatana-indicator-datetime-e69137d907e884e23e77ee0e5550ccb9faa78d37.tar.bz2 ayatana-indicator-datetime-e69137d907e884e23e77ee0e5550ccb9faa78d37.zip |
Drop myself.[h|cpp]
Diffstat (limited to 'src')
-rw-r--r-- | src/myself.cpp | 79 |
1 files changed, 0 insertions, 79 deletions
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 - |