[epiphany] bookmarks-import: Import Firefox mobile bookmarks under Mobile tag
- From: Gabriel Ivașcu <gabrielivascu src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [epiphany] bookmarks-import: Import Firefox mobile bookmarks under Mobile tag
- Date: Wed, 16 Aug 2017 09:00:00 +0000 (UTC)
commit 521cfde6191b8f0d0c2e230309474bdb57c931c2
Author: Gabriel Ivascu <gabrielivascu gnome org>
Date: Wed Aug 16 00:11:57 2017 +0300
bookmarks-import: Import Firefox mobile bookmarks under Mobile tag
https://bugzilla.gnome.org/show_bug.cgi?id=780353
src/bookmarks/ephy-bookmarks-import.c | 6 +++++-
src/bookmarks/ephy-bookmarks-manager.c | 14 ++++++++------
src/bookmarks/ephy-bookmarks-manager.h | 4 +++-
3 files changed, 16 insertions(+), 8 deletions(-)
---
diff --git a/src/bookmarks/ephy-bookmarks-import.c b/src/bookmarks/ephy-bookmarks-import.c
index 1376b3a..c68476e 100644
--- a/src/bookmarks/ephy-bookmarks-import.c
+++ b/src/bookmarks/ephy-bookmarks-import.c
@@ -214,9 +214,10 @@ ephy_bookmarks_import_from_firefox (EphyBookmarksManager *manager,
GSequence *bookmarks = NULL;
gboolean ret = TRUE;
gchar *filename;
- const char *statement_str = "SELECT b.id, p.url, b.title, b.dateAdded, b.guid "
+ const char *statement_str = "SELECT b.id, p.url, b.title, b.dateAdded, b.guid, g.title "
"FROM moz_bookmarks b "
"JOIN moz_places p ON b.fk=p.id "
+ "JOIN moz_bookmarks g ON b.parent=g.id "
"WHERE b.type=1 AND p.url NOT LIKE 'about%' "
" AND p.url NOT LIKE 'place%' "
" AND b.title IS NOT NULL "
@@ -261,12 +262,15 @@ ephy_bookmarks_import_from_firefox (EphyBookmarksManager *manager,
const char *title = ephy_sqlite_statement_get_column_as_string (statement, 2);
gint64 time_added = ephy_sqlite_statement_get_column_as_int64 (statement, 3);
const char *guid = ephy_sqlite_statement_get_column_as_string (statement, 4);
+ const char *parent_title = ephy_sqlite_statement_get_column_as_string (statement, 5);
EphyBookmark *bookmark;
GSequence *tags;
tags = g_sequence_new (g_free);
bookmark = ephy_bookmark_new (url, title, tags, guid);
ephy_bookmark_set_time_added (bookmark, time_added);
+ if (!g_strcmp0 (parent_title, FIREFOX_BOOKMARKS_MOBILE_FOLDER))
+ ephy_bookmark_add_tag (bookmark, EPHY_BOOKMARKS_MOBILE_TAG);
load_tags_for_bookmark (connection, bookmark, bookmark_id);
g_sequence_prepend (bookmarks, bookmark);
diff --git a/src/bookmarks/ephy-bookmarks-manager.c b/src/bookmarks/ephy-bookmarks-manager.c
index 534670c..ba69b3c 100644
--- a/src/bookmarks/ephy-bookmarks-manager.c
+++ b/src/bookmarks/ephy-bookmarks-manager.c
@@ -756,8 +756,9 @@ ephy_bookmarks_manager_handle_initial_merge (EphyBookmarksManager *self,
if (g_strcmp0 (type, "bookmark") || !g_strcmp0 (parent_id, "unfiled"))
goto next;
- if (!g_strcmp0 (parent_id, "mobile") && !ephy_bookmark_has_tag (l->data, "Mobile"))
- ephy_bookmark_add_tag (l->data, "Mobile");
+ if (!g_strcmp0 (parent_id, "mobile") &&
+ !ephy_bookmark_has_tag (l->data, EPHY_BOOKMARKS_MOBILE_TAG))
+ ephy_bookmark_add_tag (l->data, EPHY_BOOKMARKS_MOBILE_TAG);
/* Bookmarks from server may miss the time added timestamp. */
if (!ephy_bookmark_get_time_added (l->data))
@@ -849,8 +850,9 @@ ephy_bookmarks_manager_handle_regular_merge (EphyBookmarksManager *self,
if (g_strcmp0 (type, "bookmark") || !g_strcmp0 (parent_id, "unfiled"))
goto next;
- if (!g_strcmp0 (parent_id, "mobile") && !ephy_bookmark_has_tag (l->data, "Mobile"))
- ephy_bookmark_add_tag (l->data, "Mobile");
+ if (!g_strcmp0 (parent_id, "mobile") &&
+ !ephy_bookmark_has_tag (l->data, EPHY_BOOKMARKS_MOBILE_TAG))
+ ephy_bookmark_add_tag (l->data, EPHY_BOOKMARKS_MOBILE_TAG);
/* Bookmarks from server may miss the time added timestamp. */
if (!ephy_bookmark_get_time_added (l->data))
@@ -906,8 +908,8 @@ synchronizable_manager_merge (EphySynchronizableManager *manager,
EphyBookmarksManager *self = EPHY_BOOKMARKS_MANAGER (manager);
GList *to_upload = NULL;
- if (!ephy_bookmarks_manager_tag_exists (self, "Mobile"))
- ephy_bookmarks_manager_create_tag (self, "Mobile");
+ if (!ephy_bookmarks_manager_tag_exists (self, EPHY_BOOKMARKS_MOBILE_TAG))
+ ephy_bookmarks_manager_create_tag (self, EPHY_BOOKMARKS_MOBILE_TAG);
if (is_initial)
to_upload = ephy_bookmarks_manager_handle_initial_merge (self,
diff --git a/src/bookmarks/ephy-bookmarks-manager.h b/src/bookmarks/ephy-bookmarks-manager.h
index c35ed28..7971873 100644
--- a/src/bookmarks/ephy-bookmarks-manager.h
+++ b/src/bookmarks/ephy-bookmarks-manager.h
@@ -31,7 +31,9 @@ G_BEGIN_DECLS
G_DECLARE_FINAL_TYPE (EphyBookmarksManager, ephy_bookmarks_manager, EPHY, BOOKMARKS_MANAGER, GObject)
-#define EPHY_BOOKMARKS_FAVORITES_TAG N_("Favorites")
+#define EPHY_BOOKMARKS_FAVORITES_TAG N_("Favorites")
+#define EPHY_BOOKMARKS_MOBILE_TAG N_("Mobile")
+#define FIREFOX_BOOKMARKS_MOBILE_FOLDER "Mobile Bookmarks"
EphyBookmarksManager *ephy_bookmarks_manager_new (void);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]