pidgin/resources/Conversations/infopane.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
child 42367
12b865212d37
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/

<?xml version="1.0" encoding="UTF-8"?>
<!--
Pidgin - Internet Messenger
Copyright (C) Pidgin Developers <devel@pidgin.im>

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this library; if not, see <https://www.gnu.org/licenses/>.
-->
<interface>
  <requires lib="gtk" version="4.0"/>
  <requires lib="pidgin" version="3.0"/>
  <!-- interface-license-type gplv2 -->
  <!-- interface-name Pidgin -->
  <!-- interface-description Internet Messenger -->
  <!-- interface-copyright Pidgin Developers <devel@pidgin.im> -->
  <template class="PidginInfoPane" parent="GtkBox">
    <child>
      <object class="GtkBox" id="hbox">
        <property name="spacing">6</property>
        <child>
          <object class="PidginPresenceIcon" id="presence_icon">
            <property name="fallback">chat</property>
          </object>
        </child>
        <child>
          <object class="GtkBox">
            <property name="hexpand">1</property>
            <property name="orientation">vertical</property>
            <child>
              <object class="GtkLabel" id="name">
                <property name="label" translatable="1">[Place Holder]</property>
                <property name="xalign">0</property>
                <attributes>
                  <attribute name="weight" value="bold"></attribute>
                  <attribute name="scale" value="1.2"></attribute>
                </attributes>
              </object>
            </child>
            <child>
              <object class="GtkLabel" id="topic">
                <property name="wrap">1</property>
                <property name="xalign">0</property>
              </object>
            </child>
          </object>
        </child>
        <child>
          <object class="PidginAvatar" id="avatar">
          </object>
        </child>
      </object>
    </child>
  </template>
</interface>

mercurial