Skip to content

Commit f6f2b10

Browse files
committed
fix #1171
1 parent 87c565a commit f6f2b10

File tree

12 files changed

+167
-140
lines changed

12 files changed

+167
-140
lines changed

core/Services/Todoist.vala

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1212,7 +1212,6 @@ public class Services.Todoist : GLib.Object {
12121212
public async HttpResponse move_item (Objects.Item item, string type, string id) {
12131213
string uuid = Util.get_default ().generate_string ();
12141214
string json = item.get_move_item (uuid, type, id);
1215-
print ("%s\n".printf (json));
12161215

12171216
var message = new Soup.Message ("POST", TODOIST_SYNC_URL);
12181217
message.request_headers.append (
@@ -1225,7 +1224,6 @@ public class Services.Todoist : GLib.Object {
12251224

12261225
try {
12271226
GLib.Bytes stream = yield session.send_and_read_async (message, GLib.Priority.HIGH, null);
1228-
print ("%s\n".printf ((string) stream.get_data ()));
12291227
parser.load_from_data ((string) stream.get_data ());
12301228

12311229
print_root (parser.get_root ());

data/io.github.alainm23.planify.appdata.xml.in.in

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,15 @@
6363
<url type="donation">https://www.patreon.com/alainm23</url>
6464
<launchable type="desktop-id">@[email protected]</launchable>
6565
<releases>
66+
<release version="4.5.2" date="2024-03-04">
67+
<description translatable="no">
68+
<ul>
69+
<li>Fixed bug that improves CalDAV sync.</li>
70+
<li>Fixed bug when moving tasks.</li>
71+
</ul>
72+
</description>
73+
</release>
74+
6675
<release version="4.5.1" date="2024-03-01">
6776
<description translatable="no">
6877
<ul>

meson.build

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
project(
22
'io.github.alainm23.planify',
33
'vala', 'c',
4-
version: '4.5.1'
4+
version: '4.5.2'
55
)
66

77
gnome = import('gnome')

src/Layouts/ItemRow.vala

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ public class Layouts.ItemRow : Layouts.ItemBase {
108108
content_label.remove_css_class ("dim-label");
109109
}
110110

111-
disable_drag_and_drop ();
111+
_disable_drag_and_drop ();
112112
} else {
113113
itemrow_box.remove_css_class ("card-selected");
114114
itemrow_box.remove_css_class ("card");
@@ -124,7 +124,10 @@ public class Layouts.ItemRow : Layouts.ItemBase {
124124
labels_summary.check_revealer ();
125125

126126
update_request ();
127-
build_drag_and_drop ();
127+
128+
if (drag_enabled) {
129+
build_drag_and_drop ();
130+
}
128131
}
129132
}
130133
get {
@@ -176,6 +179,7 @@ public class Layouts.ItemRow : Layouts.ItemBase {
176179
public uint destroy_timeout { get; set; default = 0; }
177180
public uint complete_timeout { get; set; default = 0; }
178181
public bool on_drag = false;
182+
public bool drag_enabled { get; set; default = true; }
179183

180184
public signal void item_added ();
181185
public signal void widget_destroyed ();
@@ -1306,7 +1310,7 @@ public class Layouts.ItemRow : Layouts.ItemBase {
13061310
item.move (project, section_id);
13071311
}
13081312
}
1309-
private void build_drag_and_drop () {
1313+
public void build_drag_and_drop () {
13101314
// Drop Motion
13111315
build_drop_motion ();
13121316

@@ -1543,7 +1547,12 @@ public class Layouts.ItemRow : Layouts.ItemBase {
15431547
})] = drop_order_target;
15441548
}
15451549

1546-
private void disable_drag_and_drop () {
1550+
public void disable_drag_and_drop () {
1551+
drag_enabled = false;
1552+
_disable_drag_and_drop ();
1553+
}
1554+
1555+
private void _disable_drag_and_drop () {
15471556
remove_controller (drop_motion_ctrl);
15481557
itemrow_box.remove_controller (drag_source);
15491558
itemrow_box.remove_controller (drop_target);

src/Views/Filter.vala

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,8 @@ public class Views.Filter : Adw.Bin {
129129
Services.EventBus.get_default ().checked_toggled.connect (valid_checked_item);
130130

131131
Services.EventBus.get_default ().item_moved.connect ((item) => {
132-
if (items.has_key (item.id_string)) {
133-
items[item.id_string].update_request ();
132+
if (items.has_key (item.id)) {
133+
items[item.id].update_request ();
134134
}
135135
});
136136

@@ -190,21 +190,22 @@ public class Views.Filter : Adw.Bin {
190190
}
191191

192192
private void add_item (Objects.Item item) {
193-
items [item.id_string] = new Layouts.ItemRow (item) {
193+
items [item.id] = new Layouts.ItemRow (item) {
194194
show_project_label = true
195195
};
196-
listbox.append (items [item.id_string]);
196+
items [item.id].disable_drag_and_drop ();
197+
listbox.append (items [item.id]);
197198
}
198199

199200
private void valid_add_item (Objects.Item item, bool insert = true) {
200201
if (filter is Objects.Priority) {
201202
Objects.Priority priority = ((Objects.Priority) filter);
202203

203-
if (!items.has_key (item.id_string) && item.priority == priority.priority && insert) {
204+
if (!items.has_key (item.id) && item.priority == priority.priority && insert) {
204205
add_item (item);
205206
}
206207
} else if (filter is Objects.Completed) {
207-
if (!items.has_key (item.id_string) && item.checked && insert) {
208+
if (!items.has_key (item.id) && item.checked && insert) {
208209
add_item (item);
209210
}
210211
}
@@ -213,9 +214,9 @@ public class Views.Filter : Adw.Bin {
213214
}
214215

215216
private void valid_delete_item (Objects.Item item) {
216-
if (items.has_key (item.id_string)) {
217-
items[item.id_string].hide_destroy ();
218-
items.unset (item.id_string);
217+
if (items.has_key (item.id)) {
218+
items[item.id].hide_destroy ();
219+
items.unset (item.id);
219220
}
220221

221222
validate_placeholder ();
@@ -225,21 +226,21 @@ public class Views.Filter : Adw.Bin {
225226
if (filter is Objects.Priority) {
226227
Objects.Priority priority = ((Objects.Priority) filter);
227228

228-
if (items.has_key (item.id_string) && item.priority != priority.priority) {
229-
items[item.id_string].hide_destroy ();
230-
items.unset (item.id_string);
229+
if (items.has_key (item.id) && item.priority != priority.priority) {
230+
items[item.id].hide_destroy ();
231+
items.unset (item.id);
231232
}
232233

233-
if (items.has_key (item.id_string) && !item.checked) {
234-
items[item.id_string].hide_destroy ();
235-
items.unset (item.id_string);
234+
if (items.has_key (item.id) && !item.checked) {
235+
items[item.id].hide_destroy ();
236+
items.unset (item.id);
236237
}
237238

238239
valid_add_item (item);
239240
} else if (filter is Objects.Completed) {
240-
if (items.has_key (item.id_string) && item.checked) {
241-
items[item.id_string].hide_destroy ();
242-
items.unset (item.id_string);
241+
if (items.has_key (item.id) && item.checked) {
242+
items[item.id].hide_destroy ();
243+
items.unset (item.id);
243244
}
244245

245246
valid_add_item (item);
@@ -251,9 +252,9 @@ public class Views.Filter : Adw.Bin {
251252
private void valid_checked_item (Objects.Item item, bool old_checked) {
252253
if (filter is Objects.Priority) {
253254
if (!old_checked) {
254-
if (items.has_key (item.id_string) && item.completed) {
255-
items[item.id_string].hide_destroy ();
256-
items.unset (item.id_string);
255+
if (items.has_key (item.id) && item.completed) {
256+
items[item.id].hide_destroy ();
257+
items.unset (item.id);
257258
}
258259
} else {
259260
valid_update_item (item);
@@ -262,9 +263,9 @@ public class Views.Filter : Adw.Bin {
262263
if (!old_checked) {
263264
valid_update_item (item);
264265
} else {
265-
if (items.has_key (item.id_string) && !item.completed) {
266-
items[item.id_string].hide_destroy ();
267-
items.unset (item.id_string);
266+
if (items.has_key (item.id) && !item.completed) {
267+
items[item.id].hide_destroy ();
268+
items.unset (item.id);
268269
}
269270
}
270271
}

src/Views/Label/Label.vala

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ public class Views.Label : Adw.Bin {
138138
}
139139

140140
private void valid_add_item (Objects.Item item, bool insert = true) {
141-
// if (!items.has_key (item.id_string) && item.labels.has_key (label.id_string)
141+
// if (!items.has_key (item.id) && item.labels.has_key (label.id)
142142
// && insert) {
143143
// add_item (item);
144144
// }
@@ -147,18 +147,18 @@ public class Views.Label : Adw.Bin {
147147
}
148148

149149
private void valid_delete_item (Objects.Item item) {
150-
// if (items.has_key (item.id_string)) {
151-
// items[item.id_string].hide_destroy ();
152-
// items.unset (item.id_string);
150+
// if (items.has_key (item.id)) {
151+
// items[item.id].hide_destroy ();
152+
// items.unset (item.id);
153153
// }
154154

155155
// validate_placeholder ();
156156
}
157157

158158
private void valid_update_item (Objects.Item item) {
159-
// if (items.has_key (item.id_string) && !item.labels.has_key (label.id_string)) {
160-
// items[item.id_string].hide_destroy ();
161-
// items.unset (item.id_string);
159+
// if (items.has_key (item.id) && !item.labels.has_key (label.id)) {
160+
// items[item.id].hide_destroy ();
161+
// items.unset (item.id);
162162
// }
163163

164164
// valid_add_item (item);
@@ -179,10 +179,11 @@ public class Views.Label : Adw.Bin {
179179
}
180180

181181
private void add_item (Objects.Item item) {
182-
items [item.id_string] = new Layouts.ItemRow (item) {
182+
items [item.id] = new Layouts.ItemRow (item) {
183183
show_project_label = true
184184
};
185-
listbox.append (items [item.id_string]);
185+
items [item.id].disable_drag_and_drop ();
186+
listbox.append (items [item.id]);
186187
}
187188

188189
public void update_request () {

src/Views/Label/Labels.vala

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -144,11 +144,11 @@ public class Views.Labels : Adw.Bin {
144144
});
145145

146146
labels_local_header.row_activated.connect ((row) => {
147-
Services.EventBus.get_default ().pane_selected (PaneType.LABEL, ((Layouts.LabelRow) row).label.id_string);
147+
Services.EventBus.get_default ().pane_selected (PaneType.LABEL, ((Layouts.LabelRow) row).label.id);
148148
});
149149

150150
labels_todoist_header.row_activated.connect ((row) => {
151-
Services.EventBus.get_default ().pane_selected (PaneType.LABEL, ((Layouts.LabelRow) row).label.id_string);
151+
Services.EventBus.get_default ().pane_selected (PaneType.LABEL, ((Layouts.LabelRow) row).label.id);
152152
});
153153

154154
Services.Database.get_default ().label_added.connect ((label) => {

src/Views/Pinboard.vala

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ public class Views.Pinboard : Adw.Bin {
117117
Services.Database.get_default ().item_updated.connect (valid_update_item);
118118

119119
Services.EventBus.get_default ().item_moved.connect ((item) => {
120-
if (items.has_key (item.id_string)) {
121-
items[item.id_string].update_request ();
120+
if (items.has_key (item.id)) {
121+
items[item.id].update_request ();
122122
}
123123
});
124124

@@ -144,26 +144,26 @@ public class Views.Pinboard : Adw.Bin {
144144
}
145145

146146
private void valid_add_item (Objects.Item item, bool insert = true) {
147-
if (!items.has_key (item.id_string) && item.pinned && !item.checked) {
147+
if (!items.has_key (item.id) && item.pinned && !item.checked) {
148148
add_item (item);
149149
}
150150

151151
validate_placeholder ();
152152
}
153153

154154
private void valid_delete_item (Objects.Item item) {
155-
if (items.has_key (item.id_string)) {
156-
items[item.id_string].hide_destroy ();
157-
items.unset (item.id_string);
155+
if (items.has_key (item.id)) {
156+
items[item.id].hide_destroy ();
157+
items.unset (item.id);
158158
}
159159

160160
validate_placeholder ();
161161
}
162162

163163
private void valid_update_item (Objects.Item item) {
164-
if (items.has_key (item.id_string) && (!item.pinned || item.checked)) {
165-
items[item.id_string].hide_destroy ();
166-
items.unset (item.id_string);
164+
if (items.has_key (item.id) && (!item.pinned || item.checked)) {
165+
items[item.id].hide_destroy ();
166+
items.unset (item.id);
167167
}
168168

169169
valid_add_item (item);
@@ -176,9 +176,10 @@ public class Views.Pinboard : Adw.Bin {
176176
}
177177

178178
private void add_item (Objects.Item item) {
179-
items [item.id_string] = new Layouts.ItemRow (item) {
179+
items [item.id] = new Layouts.ItemRow (item) {
180180
show_project_label = true
181181
};
182-
listbox.append (items [item.id_string]);
182+
items [item.id].disable_drag_and_drop ();
183+
listbox.append (items [item.id]);
183184
}
184185
}

0 commit comments

Comments
 (0)