Skip to content

Commit

Permalink
Fix #1238
Browse files Browse the repository at this point in the history
  • Loading branch information
alainm23 committed Apr 9, 2024
1 parent 394ef24 commit 70513ba
Show file tree
Hide file tree
Showing 2 changed files with 46 additions and 7 deletions.
22 changes: 15 additions & 7 deletions core/Services/CalDAV/Core.vala
Original file line number Diff line number Diff line change
Expand Up @@ -765,21 +765,29 @@ public class Services.CalDAV.Core : GLib.Object {
}

public bool is_vtodo (GXml.DomElement element) {
bool return_value = false;
GXml.DomHTMLCollection propstat = element.get_elements_by_tag_name ("d:propstat");

GXml.DomElement propstat = element.get_elements_by_tag_name ("d:propstat").get_element (0);
GXml.DomElement prop = propstat.get_elements_by_tag_name ("d:prop").get_element (0);
GXml.DomHTMLCollection getcontenttype = prop.get_elements_by_tag_name ("d:getcontenttype");
if (propstat.length <= 0) {
return false;
}

GXml.DomHTMLCollection prop = propstat.get_element (0).get_elements_by_tag_name ("d:prop");

if (prop.length <= 0) {
return false;
}

GXml.DomHTMLCollection getcontenttype = prop.get_element (0).get_elements_by_tag_name ("d:getcontenttype");

if (getcontenttype.length <= 0) {
return return_value;
return false;
}

if (getcontenttype.get_element (0).text_content.index_of ("vtodo") > -1) {
return_value = true;
return true;
}

return return_value;
return false;
}

/*
Expand Down
31 changes: 31 additions & 0 deletions src/Views/Project/Project.vala
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ public class Views.Project : Adw.Bin {
private Gtk.Stack view_stack;
private Adw.ToolbarView toolbar_view;
private Widgets.ContextMenu.MenuItem show_completed_item;
private Widgets.ContextMenu.MenuItem delete_all_completed;
private Widgets.MultiSelectToolbar multiselect_toolbar;
private Gtk.Revealer indicator_revealer;

Expand Down Expand Up @@ -410,6 +411,11 @@ public class Views.Project : Adw.Bin {
"check-round-outline-symbolic"
);

delete_all_completed = new Widgets.ContextMenu.MenuItem (_("Delete All Completed Tasks") ,"user-trash-symbolic") {
visible = false
};
delete_all_completed.add_css_class ("menu-item-danger");

var menu_box = new Gtk.Box (Gtk.Orientation.VERTICAL, 0);
menu_box.margin_top = menu_box.margin_bottom = 3;

Expand All @@ -420,6 +426,7 @@ public class Views.Project : Adw.Bin {
menu_box.append (order_by_item);
menu_box.append (new Widgets.ContextMenu.MenuSeparator ());
menu_box.append (show_completed_item);
menu_box.append (delete_all_completed);

var popover = new Gtk.Popover () {
has_arrow = false,
Expand All @@ -441,6 +448,7 @@ public class Views.Project : Adw.Bin {
project.update_local ();

show_completed_item.title = project.show_completed ? _("Hide Completed Tasks") : _("Show Completed Tasks");
delete_all_completed.visible = project.show_completed;
check_default_view ();
});

Expand All @@ -457,6 +465,29 @@ public class Views.Project : Adw.Bin {
check_default_view ();
});

delete_all_completed.activate_item.connect (() => {
// popover.popdown ();

// var items = Services.Database.get_default ().get_items_checked_by_project (project);

// var dialog = new Adw.MessageDialog (
// (Gtk.Window) Planify.instance.main_window,
// _("Delete All Completed Tasks"), _("This will delete %d completed tasks and their subtasks from project %s".printf (items.size, project.name))
// );

// dialog.body_use_markup = true;
// dialog.add_response ("cancel", _("Cancel"));
// dialog.add_response ("delete", _("Delete"));
// dialog.set_response_appearance ("delete", Adw.ResponseAppearance.DESTRUCTIVE);
// dialog.show ();

// dialog.response.connect ((response) => {
// if (response == "delete") {

// }
// });
});

return popover;
}

Expand Down

0 comments on commit 70513ba

Please sign in to comment.