Skip to content

Instantly share code, notes, and snippets.

@bobby285271
Created December 13, 2022 02:39
Show Gist options
  • Save bobby285271/970201a36fcdacf740ae3a4e2a0b1dd7 to your computer and use it in GitHub Desktop.
Save bobby285271/970201a36fcdacf740ae3a4e2a0b1dd7 to your computer and use it in GitHub Desktop.
diff --git a/meson.build b/meson.build
index 4dab52528c..132912ff82 100644
--- a/meson.build
+++ b/meson.build
@@ -32,7 +32,7 @@ tasks_deps = [
dependency('champlain-gtk-0.12'),
dependency('clutter-1.0'),
dependency('clutter-gtk-1.0'),
- dependency('geocode-glib-1.0'),
+ dependency('geocode-glib-2.0'),
dependency('glib-2.0'),
dependency('gobject-2.0'),
dependency('granite', version: '>=6.2.0'),
@@ -42,7 +42,7 @@ tasks_deps = [
dependency('libgeoclue-2.0'),
dependency('libhandy-1', version: '>=0.90.0'),
dependency('libical-glib'),
- dependency('libgdata')
+ # dependency('libgdata')
]
if libecal_dep.version().version_compare('>=3.39.2')
diff --git a/src/TaskModel.vala b/src/TaskModel.vala
index a19535485e..365a51f376 100644
--- a/src/TaskModel.vala
+++ b/src/TaskModel.vala
@@ -274,10 +274,12 @@ public class Tasks.TaskModel : Object {
collection_source_webdav_session.credentials = credentials;
var webdav_task_list_uri = yield discover_webdav_server_uri (credentials, collection_source);
- webdav_task_list_uri.set_path (webdav_task_list_uri.get_path () + "/" + GLib.Uuid.string_random ().up ());
+ webdav_task_list_uri = Soup.uri_copy (webdav_task_list_uri,
+ Soup.URIComponent.PATH, webdav_task_list_uri.get_path () + "/" + GLib.Uuid.string_random ().up (),
+ Soup.URIComponent.NONE);
collection_source_webdav_session.mkcalendar_sync (
- webdav_task_list_uri.to_string (false),
+ webdav_task_list_uri.to_string (),
task_list.display_name,
null,
task_list_extension.color,
@@ -288,18 +290,18 @@ public class Tasks.TaskModel : Object {
registry.refresh_backend_sync (collection_source.uid, null);
break;
- case "google":
- var collection_source = registry.find_extension (collection_or_sibling, E.SOURCE_EXTENSION_COLLECTION);
- var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
- var gtasks_service = new GData.TasksService (authorizer);
+ // case "google":
+ // var collection_source = registry.find_extension (collection_or_sibling, E.SOURCE_EXTENSION_COLLECTION);
+ // var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
+ // var gtasks_service = new GData.TasksService (authorizer);
- var gtasks_tasklist = new GData.TasksTasklist (null) {
- title = task_list.display_name
- };
+ // var gtasks_tasklist = new GData.TasksTasklist (null) {
+ // title = task_list.display_name
+ // };
- gtasks_service.insert_tasklist (gtasks_tasklist, null);
- yield registry.refresh_backend (collection_source.uid, null);
- break;
+ // gtasks_service.insert_tasklist (gtasks_tasklist, null);
+ // yield registry.refresh_backend (collection_source.uid, null);
+ // break;
case "local":
task_list.parent = "local-stub";
@@ -330,7 +332,7 @@ public class Tasks.TaskModel : Object {
var task_list_webdav_extension = (E.SourceWebdav) task_list.get_extension (E.SOURCE_EXTENSION_WEBDAV_BACKEND);
collection_source_webdav_session.delete_sync (
- task_list_webdav_extension.soup_uri.to_string (false),
+ task_list_webdav_extension.uri.to_string (),
E.WEBDAV_DEPTH_THIS_AND_CHILDREN,
null,
null
@@ -338,26 +340,26 @@ public class Tasks.TaskModel : Object {
registry.refresh_backend_sync (collection_source.uid, null);
break;
- case "google":
- var collection_source = registry.find_extension (task_list, E.SOURCE_EXTENSION_COLLECTION);
- var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
- var service = new GData.TasksService (authorizer);
- var uri = "https://www.googleapis.com/tasks/v1/users/@me/lists/%s";
- var id = ((E.SourceResource) task_list.get_extension (
- E.SOURCE_EXTENSION_RESOURCE
- )).identity.replace ("gtasks::", "");
-
- var tasklist = (GData.TasksTasklist) yield service.query_single_entry_async (
- GData.TasksService.get_primary_authorization_domain (),
- uri.printf (id),
- null,
- typeof (GData.TasksTasklist),
- null
- );
-
- service.delete_tasklist (tasklist, null);
- yield registry.refresh_backend (collection_source.uid, null);
- break;
+ // case "google":
+ // var collection_source = registry.find_extension (task_list, E.SOURCE_EXTENSION_COLLECTION);
+ // var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
+ // var service = new GData.TasksService (authorizer);
+ // var uri = "https://www.googleapis.com/tasks/v1/users/@me/lists/%s";
+ // var id = ((E.SourceResource) task_list.get_extension (
+ // E.SOURCE_EXTENSION_RESOURCE
+ // )).identity.replace ("gtasks::", "");
+
+ // var tasklist = (GData.TasksTasklist) yield service.query_single_entry_async (
+ // GData.TasksService.get_primary_authorization_domain (),
+ // uri.printf (id),
+ // null,
+ // typeof (GData.TasksTasklist),
+ // null
+ // );
+
+ // service.delete_tasklist (tasklist, null);
+ // yield registry.refresh_backend (collection_source.uid, null);
+ // break;
case "local":
task_list.remove_sync (null);
@@ -392,7 +394,7 @@ public class Tasks.TaskModel : Object {
switch (backend_name.down ()) {
case "webdav": return true;
- case "google": return !is_gtasks_default_task_list (source, registry);
+ // case "google": return !is_gtasks_default_task_list (source, registry);
case "local": return source.removable;
}
@@ -402,24 +404,24 @@ public class Tasks.TaskModel : Object {
return false;
}
- private bool is_gtasks_default_task_list (E.Source task_list, E.SourceRegistry registry) throws Error {
- var collection_source = registry.find_extension (task_list, E.SOURCE_EXTENSION_COLLECTION);
- var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
- var service = new GData.TasksService (authorizer);
- var id = ((E.SourceResource) task_list.get_extension (
- E.SOURCE_EXTENSION_RESOURCE
- )).identity.replace ("gtasks::", "");
-
- var tasklist = (GData.TasksTasklist) service.query_single_entry (
- GData.TasksService.get_primary_authorization_domain (),
- "https://www.googleapis.com/tasks/v1/users/@me/lists/@default",
- null,
- typeof (GData.TasksTasklist),
- null
- );
+ // private bool is_gtasks_default_task_list (E.Source task_list, E.SourceRegistry registry) throws Error {
+ // var collection_source = registry.find_extension (task_list, E.SOURCE_EXTENSION_COLLECTION);
+ // var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
+ // var service = new GData.TasksService (authorizer);
+ // var id = ((E.SourceResource) task_list.get_extension (
+ // E.SOURCE_EXTENSION_RESOURCE
+ // )).identity.replace ("gtasks::", "");
- return tasklist.id == id;
- }
+ // var tasklist = (GData.TasksTasklist) service.query_single_entry (
+ // GData.TasksService.get_primary_authorization_domain (),
+ // "https://www.googleapis.com/tasks/v1/users/@me/lists/@default",
+ // null,
+ // typeof (GData.TasksTasklist),
+ // null
+ // );
+
+ // return tasklist.id == id;
+ // }
public string get_collection_backend_name (E.Source source, E.SourceRegistry registry) {
string? backend_name = null;
@@ -438,10 +440,10 @@ public class Tasks.TaskModel : Object {
return backend_name == null ? "" : backend_name;
}
- private async Soup.URI discover_webdav_server_uri (E.NamedParameters credentials, E.Source collection_source) throws Error {
+ private async GLib.Uri discover_webdav_server_uri (E.NamedParameters credentials, E.Source collection_source) throws Error {
var collection_source_extension = (E.SourceCollection) collection_source.get_extension (E.SOURCE_EXTENSION_COLLECTION);
- Soup.URI? webdav_server_uri = null;
+ GLib.Uri? webdav_server_uri = null;
GLib.Error? webdav_error = null;
#if HAS_EDS_3_40
@@ -477,7 +479,7 @@ public class Tasks.TaskModel : Object {
if (webdav_discovered_sources.length () > 0) {
var webdav_discovered_source = webdav_discovered_sources.nth_data (0);
- webdav_server_uri = new Soup.URI (webdav_discovered_source.href.dup ());
+ webdav_server_uri = GLib.Uri.parse (webdav_discovered_source.href.dup (), GLib.UriFlags.NONE);
}
#if !HAS_EDS_3_40
@@ -493,7 +495,9 @@ public class Tasks.TaskModel : Object {
uri_dir_path = uri_dir_path.substring (0, uri_dir_path.length - 1);
}
uri_dir_path = uri_dir_path.substring (0, uri_dir_path.last_index_of ("/"));
- webdav_server_uri.set_path (uri_dir_path);
+ webdav_server_uri = Soup.uri_copy (webdav_server_uri,
+ Soup.URIComponent.PATH, uri_dir_path,
+ Soup.URIComponent.NONE);
} catch (Error e) {
webdav_error = e;
@@ -538,35 +542,35 @@ public class Tasks.TaskModel : Object {
E.webdav_session_update_properties_sync (
collection_source_webdav_session,
#endif
- source_webdav_extension.soup_uri.to_string (false),
+ source_webdav_extension.uri.to_string (),
changes,
null
);
registry.refresh_backend_sync (collection_source.uid, null);
- } else if ("gtasks" == ((E.SourceTaskList) task_list.get_extension (E.SOURCE_EXTENSION_TASK_LIST)).backend_name && E.GDataOAuth2Authorizer.supported ()) {
- debug ("GTasks Rename '%s'", task_list.get_uid ());
-
- var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
- var gtasks_service = new GData.TasksService (authorizer);
- var uri = "https://www.googleapis.com/tasks/v1/users/@me/lists/%s";
- var task_list_id = ((E.SourceResource) task_list.get_extension (
- E.SOURCE_EXTENSION_RESOURCE
- )).identity.replace ("gtasks::", "");
-
- var gtasks_tasklist = (GData.TasksTasklist) yield gtasks_service.query_single_entry_async (
- GData.TasksService.get_primary_authorization_domain (),
- uri.printf (task_list_id),
- null,
- typeof (GData.TasksTasklist),
- null
- );
+ // } else if ("gtasks" == ((E.SourceTaskList) task_list.get_extension (E.SOURCE_EXTENSION_TASK_LIST)).backend_name && E.GDataOAuth2Authorizer.supported ()) {
+ // debug ("GTasks Rename '%s'", task_list.get_uid ());
+
+ // var authorizer = (GData.Authorizer) new E.GDataOAuth2Authorizer (collection_source, typeof (GData.TasksService));
+ // var gtasks_service = new GData.TasksService (authorizer);
+ // var uri = "https://www.googleapis.com/tasks/v1/users/@me/lists/%s";
+ // var task_list_id = ((E.SourceResource) task_list.get_extension (
+ // E.SOURCE_EXTENSION_RESOURCE
+ // )).identity.replace ("gtasks::", "");
+
+ // var gtasks_tasklist = (GData.TasksTasklist) yield gtasks_service.query_single_entry_async (
+ // GData.TasksService.get_primary_authorization_domain (),
+ // uri.printf (task_list_id),
+ // null,
+ // typeof (GData.TasksTasklist),
+ // null
+ // );
- gtasks_tasklist.title = display_name;
- gtasks_service.update_tasklist (gtasks_tasklist, null);
+ // gtasks_tasklist.title = display_name;
+ // gtasks_service.update_tasklist (gtasks_tasklist, null);
- yield registry.refresh_backend (collection_source.uid, null);
+ // yield registry.refresh_backend (collection_source.uid, null);
} else if (task_list.parent == "local-stub") {
debug ("Local Rename '%s'", task_list.get_uid ());
@@ -627,7 +631,7 @@ public class Tasks.TaskModel : Object {
E.webdav_session_update_properties_sync (
collection_source_webdav_session,
#endif
- source_webdav_extension.soup_uri.to_string (false),
+ source_webdav_extension.uri.to_string (),
changes,
null
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment