diff options
author | Priit Laes <plaes@plaes.org> | 2009-07-21 16:47:53 +0800 |
---|---|---|
committer | Priit Laes <plaes@plaes.org> | 2009-07-29 17:42:14 +0800 |
commit | f453c807afecdc210410eeb9f389ca50d0764a7c (patch) | |
tree | 8b391f193fde117a912075ab717c869b620945f8 /embed | |
parent | fce1c56a605ea712cc956537a8566d3b622a892e (diff) | |
download | gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.tar gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.tar.gz gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.tar.bz2 gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.tar.lz gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.tar.xz gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.tar.zst gsoc2013-epiphany-f453c807afecdc210410eeb9f389ca50d0764a7c.zip |
Move Epiphany to solely use GnomeKeyring for password management.
Based on patch by Holger Freyther.
Signed-off-by: Priit Laes <plaes@plaes.org>
Diffstat (limited to 'embed')
-rw-r--r-- | embed/Makefile.am | 2 | ||||
-rw-r--r-- | embed/downloader-view.c | 8 | ||||
-rw-r--r-- | embed/ephy-embed-single.c | 38 | ||||
-rw-r--r-- | embed/ephy-password-manager.c | 218 | ||||
-rw-r--r-- | embed/ephy-password-manager.h | 101 |
5 files changed, 2 insertions, 365 deletions
diff --git a/embed/Makefile.am b/embed/Makefile.am index b1f23303b..f4a49983e 100644 --- a/embed/Makefile.am +++ b/embed/Makefile.am @@ -26,7 +26,6 @@ INST_H_FILES = \ ephy-embed-shell.h \ ephy-embed-utils.h \ ephy-history.h \ - ephy-password-manager.h \ ephy-permission-manager.h \ ephy-web-view.h @@ -51,7 +50,6 @@ libephyembed_la_SOURCES = \ ephy-encodings.c \ ephy-favicon-cache.c \ ephy-history.c \ - ephy-password-manager.c \ ephy-permission-manager.c \ ephy-embed-prefs.c \ ephy-web-view.c \ diff --git a/embed/downloader-view.c b/embed/downloader-view.c index 36b25fbe5..8eae89fa5 100644 --- a/embed/downloader-view.c +++ b/embed/downloader-view.c @@ -661,10 +661,6 @@ downloader_view_add_download (DownloaderView *dv, #endif GValue visible = {0, }; -#ifdef HAVE_LIBNOTIFY - char *downloading; -#endif - /* dv may be unrefed inside update_download_row if the file * downloaded completely while the user was choosing where to * put it, so we need to protect it @@ -710,6 +706,7 @@ downloader_view_add_download (DownloaderView *dv, { #ifdef HAVE_LIBNOTIFY + char *downloading; char *name = ephy_download_get_name (download); downloading = g_strdup_printf(_("The file “%s” has been added to the downloads queue."), name); @@ -892,7 +889,7 @@ downloader_view_build_ui (DownloaderView *dv) gtk_tree_view_column_set_cell_data_func(column, renderer, progress_cell_data_func, NULL, NULL); gtk_tree_view_column_set_sort_column_id (column, COL_PERCENT); - /* Remainng time column */ + /* Remaining time column */ renderer = gtk_cell_renderer_text_new (); g_object_set (renderer, "xalign", 0.5, NULL); gtk_tree_view_insert_column_with_attributes (GTK_TREE_VIEW(priv->treeview), @@ -1007,7 +1004,6 @@ downloader_view_remove_download (DownloaderView *dv, WebKitDownload *download) update_status_icon (dv); /* Close the dialog if there are no more downloads */ - if (!g_hash_table_size (dv->priv->downloads_hash)) { g_object_unref (dv); diff --git a/embed/ephy-embed-single.c b/embed/ephy-embed-single.c index b41850a2a..f3f99965d 100644 --- a/embed/ephy-embed-single.c +++ b/embed/ephy-embed-single.c @@ -26,7 +26,6 @@ #include "ephy-file-helpers.h" #include "ephy-marshal.h" #include "ephy-signal-accumulator.h" -#include "ephy-password-manager.h" #include "ephy-permission-manager.h" #ifdef ENABLE_CERTIFICATE_MANAGER @@ -50,7 +49,6 @@ enum { static void ephy_embed_single_init (EphyEmbedSingle *single); static void ephy_embed_single_class_init (EphyEmbedSingleClass *klass); static void ephy_permission_manager_iface_init (EphyPermissionManagerIface *iface); -static void ephy_password_manager_iface_init (EphyPasswordManagerIface *iface); #ifdef ENABLE_CERTIFICATE_MANAGER static void ephy_certificate_manager_iface_init (EphyCertificateManagerIface *iface); #endif @@ -96,16 +94,12 @@ ephy_embed_single_set_property (GObject *object, #ifdef ENABLE_CERTIFICATE_MANAGER G_DEFINE_TYPE_WITH_CODE (EphyEmbedSingle, ephy_embed_single, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (EPHY_TYPE_PASSWORD_MANAGER, - ephy_password_manager_iface_init) G_IMPLEMENT_INTERFACE (EPHY_TYPE_CERTIFICATE_MANAGER, ephy_certificate_manager_iface_init) G_IMPLEMENT_INTERFACE (EPHY_TYPE_PERMISSION_MANAGER, ephy_permission_manager_iface_init)) #else G_DEFINE_TYPE_WITH_CODE (EphyEmbedSingle, ephy_embed_single, G_TYPE_OBJECT, - G_IMPLEMENT_INTERFACE (EPHY_TYPE_PASSWORD_MANAGER, - ephy_password_manager_iface_init) G_IMPLEMENT_INTERFACE (EPHY_TYPE_PERMISSION_MANAGER, ephy_permission_manager_iface_init)) #endif @@ -289,38 +283,6 @@ ephy_permission_manager_iface_init (EphyPermissionManagerIface *iface) iface->list = impl_permission_manager_list; } -static GList * -impl_list_passwords (EphyPasswordManager *manager) -{ - return NULL; -} - -static void -impl_remove_password (EphyPasswordManager *manager, - EphyPasswordInfo *info) -{ -} - -static void -impl_remove_all_passwords (EphyPasswordManager *manager) -{ -} - -static void -impl_add_password (EphyPasswordManager *manager, - EphyPasswordInfo *info) -{ -} - -static void -ephy_password_manager_iface_init (EphyPasswordManagerIface *iface) -{ - iface->add = impl_add_password; - iface->remove = impl_remove_password; - iface->remove_all = impl_remove_all_passwords; - iface->list = impl_list_passwords; -} - #ifdef ENABLE_CERTIFICATE_MANAGER static gboolean diff --git a/embed/ephy-password-manager.c b/embed/ephy-password-manager.c deleted file mode 100644 index aa757c7e4..000000000 --- a/embed/ephy-password-manager.c +++ /dev/null @@ -1,218 +0,0 @@ -/* - * Copyright © 2003 Marco Pesenti Gritti - * Copyright © 2003 Christian Persch - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY 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, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#include "config.h" - -#include "ephy-password-manager.h" -#include "ephy-marshal.h" -#include "ephy-debug.h" - -/* EphyPasswordInfo */ - -GType -ephy_password_info_get_type (void) -{ - static GType type = 0; - - if (G_UNLIKELY (type == 0)) - { - type = g_boxed_type_register_static ("EphyPasswordInfo", - (GBoxedCopyFunc) ephy_password_info_copy, - (GBoxedFreeFunc) ephy_password_info_free); - } - - return type; -} - -/** - * ephy_password_info_new: - * @host: a host name - * @username: a user name - * @password: a password, or NULL - * - * Generates a new #EphyPasswordInfo. - * - * Return value: the new password info. - **/ -EphyPasswordInfo * -ephy_password_info_new (const char *host, - const char *username, - const char *password) -{ - EphyPasswordInfo *info = g_slice_new0 (EphyPasswordInfo); - - info->host = g_strdup (host); - info->username = g_strdup (username); - info->password = g_strdup (password); - - return info; -} - -/** - * ephy_password_info_copy: - * @info: a #EphyPasswordInfo - * - * Return value: a copy of @info - **/ -EphyPasswordInfo * -ephy_password_info_copy (const EphyPasswordInfo *info) -{ - EphyPasswordInfo *copy = g_slice_new0 (EphyPasswordInfo); - - copy->host = g_strdup (info->host); - copy->username = g_strdup (info->username); - copy->password = g_strdup (info->password); - copy->httpRealm = g_strdup (info->httpRealm); - copy->passwordField = g_strdup (info->passwordField); - copy->usernameField = g_strdup (info->usernameField); - copy->formSubmitURL = g_strdup (info->formSubmitURL); - - return copy; -} - -/** - * ephy_password_info_free: - * @info: - * - * Frees @info. - **/ -void -ephy_password_info_free (EphyPasswordInfo *info) -{ - if (info != NULL) - { - g_free (info->host); - g_free (info->username); - g_free (info->password); - g_slice_free (EphyPasswordInfo, info); - } -} - -/* EphyPasswordManager */ - -static void ephy_password_manager_base_init (gpointer g_class); - -GType -ephy_password_manager_get_type (void) -{ - static GType type = 0; - - if (G_UNLIKELY (type == 0)) - { - const GTypeInfo our_info = - { - sizeof (EphyPasswordManagerIface), - ephy_password_manager_base_init, - NULL, - }; - - type = g_type_register_static (G_TYPE_INTERFACE, - "EphyPasswordManager", - &our_info, - (GTypeFlags) 0); - } - - return type; -} - -static void -ephy_password_manager_base_init (gpointer g_class) -{ - static gboolean initialised = FALSE; - - if (initialised == FALSE) - { - /** - * EphyPasswordManager::changed - * @manager: the #EphyPermissionManager - * - * The ::passwords-changed signal is emitted when the list of passwords - * has changed. - */ - g_signal_new ("passwords-changed", - EPHY_TYPE_PASSWORD_MANAGER, - G_SIGNAL_RUN_FIRST, - G_STRUCT_OFFSET (EphyPasswordManagerIface, changed), - NULL, NULL, - g_cclosure_marshal_VOID__VOID, - G_TYPE_NONE, - 0); - - initialised = TRUE; - } -} - -/** - * ephy_password_manager_add_password: - * @manager: the #EphyPasswordManager - * @info: a #EphyPasswordInfo - * - * Adds the password entry @info to the the passwords database. - **/ -void -ephy_password_manager_add_password (EphyPasswordManager *manager, - EphyPasswordInfo *info) -{ - EphyPasswordManagerIface *iface = EPHY_PASSWORD_MANAGER_GET_IFACE (manager); - iface->add (manager, info); -} - -/** - * ephy_password_manager_remove_password: - * @manager: the #EphyPasswordManager - * @info: a #EphyPasswordInfo - * - * Removes the password entry @info from the passwords database. - **/ -void -ephy_password_manager_remove_password (EphyPasswordManager *manager, - EphyPasswordInfo *info) -{ - EphyPasswordManagerIface *iface = EPHY_PASSWORD_MANAGER_GET_IFACE (manager); - iface->remove (manager, info); -} - -/** - * ephy_password_manager_remove_all_passwords: - * @manager: the #EphyPasswordManager - * - * Removes all the password entries from the password database. - **/ -void -ephy_password_manager_remove_all_passwords (EphyPasswordManager *manager) -{ - EphyPasswordManagerIface *iface = EPHY_PASSWORD_MANAGER_GET_IFACE (manager); - iface->remove_all (manager); -} - -/** - * ephy_password_manager_list_passwords: - * @manager: the #EphyPasswordManager - * - * Lists all password entries in the passwords database. - * - * Return value: the list of password entries - **/ -GList * -ephy_password_manager_list_passwords(EphyPasswordManager *manager) -{ - EphyPasswordManagerIface *iface = EPHY_PASSWORD_MANAGER_GET_IFACE (manager); - return iface->list (manager); -} diff --git a/embed/ephy-password-manager.h b/embed/ephy-password-manager.h deleted file mode 100644 index 8e8b7bc3b..000000000 --- a/embed/ephy-password-manager.h +++ /dev/null @@ -1,101 +0,0 @@ -/* - * Copyright © 2003 Marco Pesenti Gritti - * Copyright © 2003 Christian Persch - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY 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, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - * - */ - -#if !defined (__EPHY_EPIPHANY_H_INSIDE__) && !defined (EPIPHANY_COMPILATION) -#error "Only <epiphany/epiphany.h> can be included directly." -#endif - -#ifndef EPHY_PASSWORD_MANAGER_H -#define EPHY_PASSWORD_MANAGER_H - -#include <glib-object.h> -#include <glib.h> - -G_BEGIN_DECLS - -#define EPHY_TYPE_PASSWORD_MANAGER (ephy_password_manager_get_type ()) -#define EPHY_PASSWORD_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EPHY_TYPE_PASSWORD_MANAGER, EphyPasswordManager)) -#define EPHY_PASSWORD_MANAGER_IFACE(k) (G_TYPE_CHECK_CLASS_CAST((k), EPHY_TYPE_PASSWORD_MANAGER, EphyPasswordManagerIface)) -#define EPHY_IS_PASSWORD_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EPHY_TYPE_PASSWORD_MANAGER)) -#define EPHY_IS_PASSWORD_MANAGER_IFACE(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EPHY_TYPE_PASSWORD_MANAGER)) -#define EPHY_PASSWORD_MANAGER_GET_IFACE(inst) (G_TYPE_INSTANCE_GET_INTERFACE ((inst), EPHY_TYPE_PASSWORD_MANAGER, EphyPasswordManagerIface)) - -#define EPHY_TYPE_PASSWORD_INFO (ephy_password_info_get_type ()) - -typedef struct _EphyPasswordManager EphyPasswordManager; -typedef struct _EphyPasswordManagerIface EphyPasswordManagerIface; - -typedef struct -{ - char *host; - char *username; - char *password; - - char *httpRealm; - char *formSubmitURL; - char *usernameField; - char *passwordField; -} EphyPasswordInfo; - -struct _EphyPasswordManagerIface -{ - GTypeInterface base_iface; - - /* Signals */ - void (* changed) (EphyPasswordManager *manager); - - /* Methods */ - void (* add) (EphyPasswordManager *manager, - EphyPasswordInfo *info); - void (* remove) (EphyPasswordManager *manager, - EphyPasswordInfo *info); - void (* remove_all) (EphyPasswordManager *manager); - GList * (* list) (EphyPasswordManager *manager); -}; - -/* EphyPasswordInfo */ - -GType ephy_password_info_get_type (void); - -EphyPasswordInfo *ephy_password_info_new (const char *host, - const char *username, - const char *password); - -EphyPasswordInfo *ephy_password_info_copy (const EphyPasswordInfo *info); - -void ephy_password_info_free (EphyPasswordInfo *info); - -/* EphyPasswordManager */ - -GType ephy_password_manager_get_type (void); - -void ephy_password_manager_add_password (EphyPasswordManager *manager, - EphyPasswordInfo *info); - -void ephy_password_manager_remove_password (EphyPasswordManager *manager, - EphyPasswordInfo *info); - -void ephy_password_manager_remove_all_passwords (EphyPasswordManager *manager); - -GList * ephy_password_manager_list_passwords (EphyPasswordManager *manager); - -G_END_DECLS - -#endif |