1#include <gtk/gtk.h>
2
3static void
4capture_widget_destroy (void)
5{
6 GtkWidget *searchbar = gtk_search_bar_new ();
7 GtkWidget *button = gtk_button_new ();
8
9 g_object_ref_sink (searchbar);
10 g_object_ref_sink (button);
11
12 gtk_search_bar_set_key_capture_widget (GTK_SEARCH_BAR (searchbar), widget: button);
13
14 g_assert_true (gtk_search_bar_get_key_capture_widget (GTK_SEARCH_BAR (searchbar)) == button);
15
16 g_object_unref (object: button);
17
18 g_assert_null (gtk_search_bar_get_key_capture_widget (GTK_SEARCH_BAR (searchbar)));
19
20 g_object_unref (object: searchbar);
21}
22
23static void
24capture_widget_unset (void)
25{
26 GtkWidget *searchbar = gtk_search_bar_new ();
27 GtkWidget *button = gtk_button_new ();
28
29 g_object_ref_sink (searchbar);
30 g_object_ref_sink (button);
31
32 gtk_search_bar_set_key_capture_widget (GTK_SEARCH_BAR (searchbar), widget: button);
33
34 g_assert_true (gtk_search_bar_get_key_capture_widget (GTK_SEARCH_BAR (searchbar)) == button);
35
36 gtk_search_bar_set_key_capture_widget (GTK_SEARCH_BAR (searchbar), NULL);
37
38 g_assert_null (gtk_search_bar_get_key_capture_widget (GTK_SEARCH_BAR (searchbar)));
39
40 g_object_unref (object: searchbar);
41 g_object_unref (object: button);
42}
43
44int
45main (int argc,
46 char *argv[])
47{
48 gtk_test_init (argcp: &argc, argvp: &argv);
49
50 g_test_add_func (testpath: "/searchbar/capture-widget-destroy", test_func: capture_widget_destroy);
51 g_test_add_func (testpath: "/searchbar/capture-widget-unset", test_func: capture_widget_unset);
52
53 return g_test_run();
54}
55

source code of gtk/testsuite/gtk/searchbar.c