Sun, 30 Oct 2022 03:29:33 -0500
Move PidginAccountChooser to GtkDropDown
The chooser connects to the default account manager automatically.
Additionally, re-parent the `GtkTreeModelFilter` subclasses to `GtkFilter`, and use them on the `filter` property.
This also means the previous `filter_func` that was moved to `GtkFilter` in /r/1995 are now used again.
Testing Done:
Opened most of the affected dialogs. Disabled XMPP account and saw that it was removed from all connected-only filtered choosers. Re-enabled account and it was back in the choosers.
Confirmed that only XMPP, and not Demo accounts appeared in the two XMPP-specific plugins.
Request API is still only compile-tested.
Reviewed at https://reviews.imfreedom.org/r/1992/
|
41355
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
1 | <?xml version="1.0" encoding="UTF-8"?> |
|
41592
8e279e150bce
Port PidginInfoPane and PidginPresenceIcon to GTK4
Gary Kramlich <grim@reaperworld.com>
parents:
41355
diff
changeset
|
2 | <!-- |
|
41355
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
3 | Pidgin - Internet Messenger |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
4 | Copyright (C) Pidgin Developers <devel@pidgin.im> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
5 | |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
6 | This program is free software; you can redistribute it and/or |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
7 | modify it under the terms of the GNU General Public License |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
8 | as published by the Free Software Foundation; either version 2 |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
9 | of the License, or (at your option) any later version. |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
10 | |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
11 | This program is distributed in the hope that it will be useful, |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
12 | but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
14 | GNU General Public License for more details. |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
15 | |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
16 | You should have received a copy of the GNU General Public License |
|
41592
8e279e150bce
Port PidginInfoPane and PidginPresenceIcon to GTK4
Gary Kramlich <grim@reaperworld.com>
parents:
41355
diff
changeset
|
17 | along with this library; if not, see <https://www.gnu.org/licenses/>. |
|
41355
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
18 | --> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
19 | <interface> |
|
41592
8e279e150bce
Port PidginInfoPane and PidginPresenceIcon to GTK4
Gary Kramlich <grim@reaperworld.com>
parents:
41355
diff
changeset
|
20 | <requires lib="gtk" version="4.0"/> |
|
41355
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
21 | <!-- interface-license-type gplv2 --> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
22 | <!-- interface-name Pidgin --> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
23 | <!-- interface-description Internet Messenger --> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
24 | <!-- interface-copyright Pidgin Developers <devel@pidgin.im> --> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
25 | <template class="PidginPresenceIcon" parent="GtkBox"> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
26 | <property name="orientation">vertical</property> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
27 | <child> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
28 | <object class="GtkImage" id="icon"> |
|
41592
8e279e150bce
Port PidginInfoPane and PidginPresenceIcon to GTK4
Gary Kramlich <grim@reaperworld.com>
parents:
41355
diff
changeset
|
29 | <property name="vexpand">1</property> |
|
41355
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
30 | <property name="icon-name">image-missing</property> |
|
41592
8e279e150bce
Port PidginInfoPane and PidginPresenceIcon to GTK4
Gary Kramlich <grim@reaperworld.com>
parents:
41355
diff
changeset
|
31 | <property name="use-fallback">1</property> |
|
8e279e150bce
Port PidginInfoPane and PidginPresenceIcon to GTK4
Gary Kramlich <grim@reaperworld.com>
parents:
41355
diff
changeset
|
32 | <property name="icon_size">large</property> |
|
41355
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
33 | </object> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
34 | </child> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
35 | </template> |
|
cb48a8dd1bfc
Re-subclass PidginPresenceIcon onto GtkBox as GtkImage is final in Gtk4
Gary Kramlich <grim@reaperworld.com>
parents:
diff
changeset
|
36 | </interface> |