Replace PurpleRequestPage UI data with GObject data

Tue, 07 Mar 2023 01:08:39 -0600

author
Elliott Sales de Andrade <quantum.analyst@gmail.com>
date
Tue, 07 Mar 2023 01:08:39 -0600
changeset 42129
7b3a4ffa7227
parent 42128
118067ca0367
child 42130
294e364ec0cd

Replace PurpleRequestPage UI data with GObject data

Testing Done:
Compiled and opened Request Fields from the Demo protocol.

Reviewed at https://reviews.imfreedom.org/r/2327/

ChangeLog.API file | annotate | diff | comparison | revisions
libpurple/purplerequestpage.c file | annotate | diff | comparison | revisions
libpurple/purplerequestpage.h file | annotate | diff | comparison | revisions
pidgin/gtkrequest.c file | annotate | diff | comparison | revisions
--- a/ChangeLog.API	Tue Mar 07 01:04:42 2023 -0600
+++ b/ChangeLog.API	Tue Mar 07 01:08:39 2023 -0600
@@ -724,6 +724,8 @@
 		  instead.
 		* purple_request_fields_destroy. Use g_object_unref instead.
 		* purple_request_fields_get_autosensitive
+		* purple_request_fields_get_ui_data
+		* purple_request_fields_set_ui_data
 		* PurpleRoomlistRoomType
 		* purple_roomlist_expand_category
 		* purple_roomlist_field_get_field_type
--- a/libpurple/purplerequestpage.c	Tue Mar 07 01:04:42 2023 -0600
+++ b/libpurple/purplerequestpage.c	Tue Mar 07 01:08:39 2023 -0600
@@ -351,17 +351,3 @@
 
 	return purple_request_field_account_get_value(field);
 }
-
-gpointer
-purple_request_page_get_ui_data(PurpleRequestPage *page) {
-	g_return_val_if_fail(PURPLE_IS_REQUEST_PAGE(page), NULL);
-
-	return page->ui_data;
-}
-
-void
-purple_request_page_set_ui_data(PurpleRequestPage *page, gpointer ui_data) {
-	g_return_if_fail(PURPLE_IS_REQUEST_PAGE(page));
-
-	page->ui_data = ui_data;
-}
--- a/libpurple/purplerequestpage.h	Tue Mar 07 01:04:42 2023 -0600
+++ b/libpurple/purplerequestpage.h	Tue Mar 07 01:08:39 2023 -0600
@@ -205,27 +205,6 @@
  */
 PurpleAccount *purple_request_page_get_account(PurpleRequestPage *page, const char *id);
 
-/**
- * purple_request_page_get_ui_data:
- * @page: The fields page.
- *
- * Returns the UI data associated with this object.
- *
- * Returns: The UI data associated with this object.  This is a
- *         convenience field provided to the UIs--it is not
- *         used by the libpurple core.
- */
-gpointer purple_request_page_get_ui_data(PurpleRequestPage *page);
-
-/**
- * purple_request_page_set_ui_data:
- * @page: The fields page.
- * @ui_data: A pointer to associate with this object.
- *
- * Set the UI data associated with this object.
- */
-void purple_request_page_set_ui_data(PurpleRequestPage *page, gpointer ui_data);
-
 G_END_DECLS
 
 #endif /* PURPLE_REQUEST_PAGE_H */
--- a/pidgin/gtkrequest.c	Tue Mar 07 01:04:42 2023 -0600
+++ b/pidgin/gtkrequest.c	Tue Mar 07 01:08:39 2023 -0600
@@ -231,7 +231,7 @@
 
 	group = purple_request_field_get_group(field);
 	page = purple_request_group_get_page(group);
-	req_data = purple_request_page_get_ui_data(page);
+	req_data = g_object_get_data(G_OBJECT(page), "pidgin-ui-data");
 
 	gtk_widget_set_sensitive(req_data->ok_button,
 		purple_request_page_all_required_filled(page) &&
@@ -1907,7 +1907,7 @@
 	data->user_data = user_data;
 	data->u.multifield.page = page;
 
-	purple_request_page_set_ui_data(page, data);
+	g_object_set_data(G_OBJECT(page), "pidgin-ui-data", data);
 
 	extra_actions = purple_request_cpar_get_extra_actions(cpar);
 

mercurial