pidgin/resources/Notifications/list.ui

Sun, 30 Oct 2022 03:29:33 -0500

author
Elliott Sales de Andrade <quantum.analyst@gmail.com>
date
Sun, 30 Oct 2022 03:29:33 -0500
changeset 41864
6f490dec468f
parent 41629
f617ffec2950
permissions
-rw-r--r--

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/

41441
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 <?xml version="1.0" encoding="UTF-8"?>
41556
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
2 <!--
41441
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 Pidgin - Internet Messenger
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 Copyright (C) Pidgin Developers <devel@pidgin.im>
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
6 This program is free software; you can redistribute it and/or
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 modify it under the terms of the GNU General Public License
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 as published by the Free Software Foundation; either version 2
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
9 of the License, or (at your option) any later version.
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
10
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
11 This program is distributed in the hope that it will be useful,
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
14 GNU General Public License for more details.
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
15
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
41556
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
17 along with this library; if not, see <https://www.gnu.org/licenses/>.
41441
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18 -->
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
19 <interface>
41556
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
20 <requires lib="gtk" version="4.0"/>
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
21 <requires lib="Adw" version="1.0"/>
41441
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22 <!-- interface-license-type gplv2 -->
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 <!-- interface-name Pidgin -->
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 <!-- interface-description Internet Messenger -->
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 <!-- interface-copyright Pidgin Developers <devel@pidgin.im> -->
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26 <template class="PidginNotificationList" parent="GtkBox">
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 <property name="orientation">vertical</property>
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 <child>
41442
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
29 <object class="GtkListBox" id="list_box">
41556
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
30 <property name="vexpand">1</property>
41442
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
31 <child type="placeholder">
41556
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
32 <object class="AdwStatusPage">
41442
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
33 <property name="visible">True</property>
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
34 <property name="can-focus">False</property>
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
35 <property name="icon-name">mail-read-symbolic</property>
41556
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
36 <property name="title" translatable="1">Notifications</property>
aea59a349641 Port the notifications API to GTK4
Gary Kramlich <grim@reaperworld.com>
parents: 41442
diff changeset
37 <property name="description" translatable="1">You&apos;re all caught up!</property>
41442
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
38 <child>
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
39 <placeholder/>
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
40 </child>
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
41 </object>
80d00b75945c Use a HdyStatusPage as a place holder for the notifications list
Gary Kramlich <grim@reaperworld.com>
parents: 41441
diff changeset
42 </child>
41441
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 </object>
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44 </child>
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
45 </template>
e114ed471a1e Implement the UI for the new Notifications API.
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
46 </interface>

mercurial