Skip to content

Commit c83d918

Browse files
qarkaicaclark
authored andcommitted
Use PanViewFilterElement for PanFilterCallbackState::filter_element
Also inline pan_filter_callback_state_free().
1 parent 7382a1e commit c83d918

1 file changed

Lines changed: 7 additions & 13 deletions

File tree

src/pan-view/pan-view-filter.cc

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ struct PanViewFilterElement
5656
struct PanFilterCallbackState
5757
{
5858
PanWindow *pw;
59-
GList *filter_element;
59+
PanViewFilterElement *filter_element;
6060
};
6161

6262
void pan_view_filter_element_free(PanViewFilterElement *filter_element)
@@ -68,25 +68,19 @@ void pan_view_filter_element_free(PanViewFilterElement *filter_element)
6868
g_free(filter_element);
6969
}
7070

71-
void pan_filter_callback_state_free(PanFilterCallbackState *cb_state)
72-
{
73-
if (!cb_state) return;
74-
75-
g_list_free_full(cb_state->filter_element, reinterpret_cast<GDestroyNotify>(pan_view_filter_element_free));
76-
g_free(cb_state);
77-
}
78-
7971
void pan_filter_kw_button_cb(GtkButton *widget, gpointer data)
8072
{
8173
auto cb_state = static_cast<PanFilterCallbackState *>(data);
8274
PanWindow *pw = cb_state->pw;
8375
PanViewFilterUi *ui = pw->filter_ui;
8476

85-
ui->filter_elements = g_list_remove_link(ui->filter_elements, cb_state->filter_element);
77+
ui->filter_elements = g_list_remove(ui->filter_elements, cb_state->filter_element);
8678
widget_remove_from_parent(GTK_WIDGET(widget));
87-
pan_filter_callback_state_free(cb_state);
8879

89-
gtk_label_set_text(GTK_LABEL(pw->filter_ui->filter_label), _("Removed keyword…"));
80+
pan_view_filter_element_free(cb_state->filter_element);
81+
g_free(cb_state);
82+
83+
gtk_label_set_text(GTK_LABEL(ui->filter_label), _("Removed keyword…"));
9084
pan_layout_update(pw);
9185
}
9286

@@ -129,7 +123,7 @@ void pan_filter_activate_cb(PanWindow *pw, const gchar *text)
129123

130124
auto cb_state = g_new0(PanFilterCallbackState, 1);
131125
cb_state->pw = pw;
132-
cb_state->filter_element = g_list_last(ui->filter_elements);
126+
cb_state->filter_element = element;
133127

134128
g_signal_connect(G_OBJECT(kw_button), "clicked",
135129
G_CALLBACK(pan_filter_kw_button_cb), cb_state);

0 commit comments

Comments
 (0)