Merge branch 'master' of dev.gajim.org:gajim/gajim
This commit is contained in:
commit
4f7b72883d
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.18.3 -->
|
||||
<!-- Generated with glade 3.20.0 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.12"/>
|
||||
<object class="GtkGrid" id="tooltip_grid">
|
||||
|
@ -10,8 +10,8 @@
|
|||
<object class="GtkLabel" id="nick">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="xalign">0</property>
|
||||
<attributes>
|
||||
<attribute name="weight" value="bold"/>
|
||||
</attributes>
|
||||
|
@ -26,10 +26,11 @@
|
|||
<object class="GtkLabel" id="status">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="wrap">True</property>
|
||||
<property name="wrap_mode">word-char</property>
|
||||
<property name="max_width_chars">40</property>
|
||||
<property name="xalign">0</property>
|
||||
<attributes>
|
||||
<attribute name="style" value="italic"/>
|
||||
</attributes>
|
||||
|
@ -44,9 +45,9 @@
|
|||
<object class="GtkLabel" id="jid_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes">Jabber ID:</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -69,9 +70,9 @@
|
|||
<object class="GtkLabel" id="resource_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes">Resource:</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -82,8 +83,8 @@
|
|||
<object class="GtkLabel" id="affiliation">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -95,8 +96,8 @@
|
|||
<object class="GtkLabel" id="user_show">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -108,6 +109,7 @@
|
|||
<object class="GtkLabel" id="fillelement">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="vexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
|
@ -120,8 +122,8 @@
|
|||
<object class="GtkLabel" id="resource">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
|
@ -132,8 +134,8 @@
|
|||
<object class="GtkLabel" id="jid">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<attributes>
|
||||
<attribute name="weight" value="bold"/>
|
||||
</attributes>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Generated with glade 3.20.0 -->
|
||||
<interface>
|
||||
<requires lib="gtk+" version="3.12"/>
|
||||
<requires lib="gtk+" version="3.20"/>
|
||||
<object class="GtkWindow" id="vcard_information_window">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="border_width">12</property>
|
||||
|
@ -20,8 +20,8 @@
|
|||
<object class="GtkLabel" id="nickname_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="expand">False</property>
|
||||
|
@ -50,9 +50,10 @@
|
|||
<object class="GtkLabel" id="JabberID_Label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes"><b>Jabber ID:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -63,10 +64,10 @@
|
|||
<object class="GtkLabel" id="Resource_Label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes"><b>Resource:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -77,10 +78,10 @@
|
|||
<object class="GtkLabel" id="Status_Label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes"><b>Status:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -91,10 +92,10 @@
|
|||
<object class="GtkLabel" id="Client_Label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes"><b>Client:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -105,10 +106,10 @@
|
|||
<object class="GtkLabel" id="System_Label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes"><b>System:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -119,10 +120,10 @@
|
|||
<object class="GtkLabel" id="Time_Label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes"><b>Contact time:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
|
@ -133,10 +134,11 @@
|
|||
<object class="GtkLabel" id="jid_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
|
@ -153,11 +155,11 @@
|
|||
<object class="GtkLabel" id="resource_prio_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
|
@ -166,38 +168,15 @@
|
|||
<property name="top_attach">1</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox" id="status_label_eventbox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="visible_window">False</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="status_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="client_name_version_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
|
@ -208,12 +187,12 @@
|
|||
<object class="GtkLabel" id="os_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="wrap">True</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
|
@ -224,11 +203,11 @@
|
|||
<object class="GtkLabel" id="time_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
|
@ -240,16 +219,115 @@
|
|||
<property name="can_focus">False</property>
|
||||
<property name="no_show_all">True</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="ypad">5</property>
|
||||
<property name="label" translatable="yes"><b>User avatar:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="custom_avatar_label">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="no_show_all">True</property>
|
||||
<property name="label" translatable="yes"><b>Configured avatar:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImage" id="custom_avatar_image">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="no_show_all">True</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="stock">gtk-missing-image</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="height">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="ask_title_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes" comments="Given Name"><b>Ask:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="subscription_title_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">end</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="label" translatable="yes" comments="Family Name"><b>Subscription:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="status_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="wrap">True</property>
|
||||
<property name="wrap_mode">word-char</property>
|
||||
<property name="selectable">True</property>
|
||||
<property name="width_chars">20</property>
|
||||
<property name="max_width_chars">30</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="subscription_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="ask_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="margin_left">5</property>
|
||||
<property name="hexpand">True</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox" id="PHOTO_eventbox">
|
||||
<property name="visible">True</property>
|
||||
|
@ -261,8 +339,8 @@
|
|||
<object class="GtkImage" id="PHOTO_image">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="no_show_all">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
<property name="halign">start</property>
|
||||
<property name="valign">start</property>
|
||||
<property name="stock">gtk-missing-image</property>
|
||||
</object>
|
||||
</child>
|
||||
|
@ -273,99 +351,6 @@
|
|||
<property name="height">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="custom_avatar_label">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="no_show_all">True</property>
|
||||
<property name="label" translatable="yes"><b>Configured avatar:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="top_attach">0</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkImage" id="custom_avatar_image">
|
||||
<property name="can_focus">False</property>
|
||||
<property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
|
||||
<property name="no_show_all">True</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="stock">gtk-missing-image</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">2</property>
|
||||
<property name="top_attach">1</property>
|
||||
<property name="height">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="ask_title_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes" comments="Given Name"><b>Ask:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox" id="ask_label_eventbox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="visible_window">False</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="ask_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">7</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="subscription_title_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes" comments="Family Name"><b>Subscription:</b></property>
|
||||
<property name="use_markup">True</property>
|
||||
<property name="xalign">1</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">0</property>
|
||||
<property name="top_attach">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
<object class="GtkEventBox" id="subscription_label_eventbox">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="visible_window">False</property>
|
||||
<child>
|
||||
<object class="GtkLabel" id="subscription_label">
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="hexpand">True</property>
|
||||
<property name="xpad">5</property>
|
||||
<property name="xalign">0</property>
|
||||
</object>
|
||||
</child>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="left_attach">1</property>
|
||||
<property name="top_attach">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
</object>
|
||||
</child>
|
||||
<child type="tab">
|
||||
|
@ -373,8 +358,6 @@
|
|||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Contact</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="tab_fill">False</property>
|
||||
|
@ -952,8 +935,6 @@
|
|||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Personal Info</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="position">1</property>
|
||||
|
@ -1353,8 +1334,6 @@
|
|||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes">Work</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="position">2</property>
|
||||
|
@ -1387,8 +1366,6 @@
|
|||
<property name="visible">True</property>
|
||||
<property name="can_focus">False</property>
|
||||
<property name="label" translatable="yes" comments=""About" is the text of a tab of vcard window">About</property>
|
||||
<property name="xalign">0</property>
|
||||
<property name="yalign">0</property>
|
||||
</object>
|
||||
<packing>
|
||||
<property name="position">3</property>
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
-->
|
||||
<query xmlns:reg="urn:xmpp:vcard:registration:1">
|
||||
<item jid="0nl1ne.at" />
|
||||
<item jid="404.city" />
|
||||
<item jid="brauchen.info" />
|
||||
<item jid="chatme.im" />
|
||||
<item jid="climm.org" />
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 246 B |
|
@ -287,6 +287,7 @@ class ChatControl(ChatControlBase):
|
|||
self.encryption_menu = self.xml.get_object('encryption_menu')
|
||||
self.encryption_menu.set_menu_model(
|
||||
gui_menu_builder.get_encryption_menu(self.contact, self.type_id))
|
||||
self.set_encryption_menu_icon()
|
||||
# restore previous conversation
|
||||
self.restore_conversation()
|
||||
self.msg_textview.grab_focus()
|
||||
|
@ -990,7 +991,7 @@ class ChatControl(ChatControlBase):
|
|||
def get_our_nick(self):
|
||||
return gajim.nicks[self.account]
|
||||
|
||||
def print_conversation(self, text, frm='', tim=None, encrypted=False,
|
||||
def print_conversation(self, text, frm='', tim=None, encrypted=None,
|
||||
subject=None, xhtml=None, simple=False, xep0184_id=None,
|
||||
displaymarking=None, msg_log_id=None, correct_id=None,
|
||||
msg_stanza_id=None, additional_data=None):
|
||||
|
@ -1023,12 +1024,6 @@ class ChatControl(ChatControlBase):
|
|||
kind = 'info'
|
||||
name = ''
|
||||
else:
|
||||
if self.session and self.session.enable_encryption:
|
||||
# ESessions
|
||||
if not encrypted:
|
||||
msg = _('The following message was NOT encrypted')
|
||||
ChatControlBase.print_conversation_line(self, msg, 'status',
|
||||
'', tim)
|
||||
if not frm:
|
||||
kind = 'incoming'
|
||||
name = contact.get_shown_name()
|
||||
|
@ -1048,7 +1043,8 @@ class ChatControl(ChatControlBase):
|
|||
subject=subject, old_kind=self.old_msg_kind, xhtml=xhtml,
|
||||
simple=simple, xep0184_id=xep0184_id, displaymarking=displaymarking,
|
||||
msg_log_id=msg_log_id, msg_stanza_id=msg_stanza_id,
|
||||
correct_id=correct_id, additional_data=additional_data)
|
||||
correct_id=correct_id, additional_data=additional_data,
|
||||
encrypted=encrypted)
|
||||
if text.startswith('/me ') or text.startswith('/me\n'):
|
||||
self.old_msg_kind = None
|
||||
else:
|
||||
|
|
|
@ -36,6 +36,7 @@ from gi.repository import GObject
|
|||
from gi.repository import GLib
|
||||
from gi.repository import Gio
|
||||
import gtkgui_helpers
|
||||
from gtkgui_helpers import Color
|
||||
import message_control
|
||||
import dialogs
|
||||
import history_window
|
||||
|
@ -442,6 +443,7 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
|
|||
self.terminate_esessions()
|
||||
action.set_state(param)
|
||||
self.set_encryption_state(encryption)
|
||||
self.set_encryption_menu_icon()
|
||||
self.set_lock_image()
|
||||
|
||||
def set_encryption_state(self, encryption):
|
||||
|
@ -455,6 +457,19 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
|
|||
state = gajim.config.get_per('encryption', config_key, 'encryption')
|
||||
return state or None
|
||||
|
||||
def set_encryption_menu_icon(self):
|
||||
for child in self.encryption_menu.get_children():
|
||||
if isinstance(child, Gtk.Image):
|
||||
image = child
|
||||
break
|
||||
|
||||
if not self.encryption:
|
||||
icon = gtkgui_helpers.get_icon_pixmap(
|
||||
'channel-insecure-symbolic', color=[Color.BLACK])
|
||||
else:
|
||||
icon = gtkgui_helpers.get_icon_pixmap('channel-secure-symbolic')
|
||||
image.set_from_pixbuf(icon)
|
||||
|
||||
def set_speller(self):
|
||||
# now set the one the user selected
|
||||
per_type = 'contacts'
|
||||
|
@ -894,7 +909,8 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
|
|||
other_tags_for_name=[], other_tags_for_time=[], other_tags_for_text=[],
|
||||
count_as_new=True, subject=None, old_kind=None, xhtml=None, simple=False,
|
||||
xep0184_id=None, graphics=True, displaymarking=None, msg_log_id=None,
|
||||
msg_stanza_id=None, correct_id=None, additional_data=None):
|
||||
msg_stanza_id=None, correct_id=None, additional_data=None,
|
||||
encrypted=None):
|
||||
"""
|
||||
Print 'chat' type messages
|
||||
correct_id = (message_id, correct_id)
|
||||
|
@ -919,7 +935,8 @@ class ChatControlBase(MessageControl, ChatCommandProcessor, CommandTools):
|
|||
other_tags_for_name, other_tags_for_time, other_tags_for_text,
|
||||
subject, old_kind, xhtml, simple=simple, graphics=graphics,
|
||||
displaymarking=displaymarking, msg_stanza_id=msg_stanza_id,
|
||||
correct_id=correct_id, additional_data=additional_data)
|
||||
correct_id=correct_id, additional_data=additional_data,
|
||||
encrypted=encrypted)
|
||||
|
||||
if xep0184_id is not None:
|
||||
textview.add_xep0184_mark(xep0184_id)
|
||||
|
|
|
@ -1497,6 +1497,7 @@ class GcMessageReceivedEvent(nec.NetworkIncomingEvent):
|
|||
self.nickname = self.msg_obj.resource
|
||||
self.timestamp = self.msg_obj.timestamp
|
||||
self.xhtml_msgtxt = self.stanza.getXHTML()
|
||||
self.encrypted = self.msg_obj.encrypted
|
||||
self.correct_id = None # XEP-0308
|
||||
|
||||
if gajim.config.get('ignore_incoming_xhtml'):
|
||||
|
|
|
@ -2935,7 +2935,6 @@ class GroupchatConfigWindow:
|
|||
self.affiliation_treeview[affiliation].append_column(col)
|
||||
|
||||
sw = Gtk.ScrolledWindow()
|
||||
sw.set_policy(Gtk.PolicyType.AUTOMATIC, Gtk.PolicyType.NEVER)
|
||||
sw.add(self.affiliation_treeview[affiliation])
|
||||
add_on_vbox.pack_start(sw, True, True, 0)
|
||||
gajim.connections[self.account].get_affiliation_list(self.room_jid,
|
||||
|
|
|
@ -170,6 +170,8 @@ class ConversationTextview(GObject.GObject):
|
|||
|
||||
MESSAGE_CORRECTED_PIXBUF = gtkgui_helpers.get_icon_pixmap(
|
||||
'document-edit-symbolic')
|
||||
MESSAGE_ENCRYPTED_PIXBUF = gtkgui_helpers.get_icon_pixmap(
|
||||
'channel-secure-croped-symbolic')
|
||||
|
||||
# smooth scroll constants
|
||||
MAX_SCROLL_TIME = 0.4 # seconds
|
||||
|
@ -1100,7 +1102,8 @@ class ConversationTextview(GObject.GObject):
|
|||
def print_conversation_line(self, text, jid, kind, name, tim,
|
||||
other_tags_for_name=None, other_tags_for_time=None, other_tags_for_text=None,
|
||||
subject=None, old_kind=None, xhtml=None, simple=False, graphics=True,
|
||||
displaymarking=None, msg_stanza_id=None, correct_id=None, additional_data=None):
|
||||
displaymarking=None, msg_stanza_id=None, correct_id=None, additional_data=None,
|
||||
encrypted=None):
|
||||
"""
|
||||
Print 'chat' type messages
|
||||
"""
|
||||
|
@ -1168,6 +1171,9 @@ class ConversationTextview(GObject.GObject):
|
|||
self.print_time(text, kind, tim, simple, direction_mark,
|
||||
other_tags_for_time, iter_)
|
||||
|
||||
if encrypted:
|
||||
buffer_.insert_pixbuf(iter_, self.MESSAGE_ENCRYPTED_PIXBUF)
|
||||
|
||||
# If there's a displaymarking, print it here.
|
||||
if displaymarking:
|
||||
self.print_displaymarking(displaymarking, iter_=iter_)
|
||||
|
|
|
@ -493,6 +493,7 @@ class GroupchatControl(ChatControlBase):
|
|||
self.encryption_menu = self.xml.get_object('encryption_menu')
|
||||
self.encryption_menu.set_menu_model(
|
||||
gui_menu_builder.get_encryption_menu(self.contact, self.type_id))
|
||||
self.set_encryption_menu_icon()
|
||||
|
||||
gajim.ged.register_event_handler('gc-presence-received', ged.GUI1,
|
||||
self._nec_gc_presence_received)
|
||||
|
@ -1090,14 +1091,14 @@ class GroupchatControl(ChatControlBase):
|
|||
# don't print xhtml if it's an old message.
|
||||
# Like that xhtml messages are grayed too.
|
||||
self.print_old_conversation(obj.msgtxt, contact=obj.nick,
|
||||
tim=obj.timestamp, xhtml=None,
|
||||
tim=obj.timestamp, xhtml=None, encrypted=obj.encrypted,
|
||||
displaymarking=obj.displaymarking, msg_stanza_id=obj.id_)
|
||||
else:
|
||||
if obj.nick == self.nick:
|
||||
self.last_sent_txt = obj.msgtxt
|
||||
self.print_conversation(obj.msgtxt, contact=obj.nick,
|
||||
tim=obj.timestamp, xhtml=obj.xhtml_msgtxt,
|
||||
displaymarking=obj.displaymarking,
|
||||
displaymarking=obj.displaymarking, encrypted=obj.encrypted,
|
||||
correct_id=obj.correct_id, msg_stanza_id=obj.id_)
|
||||
obj.needs_highlight = self.needs_visual_notification(obj.msgtxt)
|
||||
|
||||
|
@ -1153,7 +1154,7 @@ class GroupchatControl(ChatControlBase):
|
|||
return None
|
||||
|
||||
def print_old_conversation(self, text, contact='', tim=None, xhtml = None,
|
||||
displaymarking=None, msg_stanza_id=None):
|
||||
displaymarking=None, msg_stanza_id=None, encrypted=None):
|
||||
if contact:
|
||||
if contact == self.nick: # it's us
|
||||
kind = 'outgoing'
|
||||
|
@ -1165,13 +1166,16 @@ class GroupchatControl(ChatControlBase):
|
|||
small_attr = ['small']
|
||||
else:
|
||||
small_attr = []
|
||||
|
||||
ChatControlBase.print_conversation_line(self, text, kind, contact, tim,
|
||||
small_attr, small_attr + ['restored_message'],
|
||||
small_attr + ['restored_message'], count_as_new=False, xhtml=xhtml,
|
||||
displaymarking=displaymarking, msg_stanza_id=msg_stanza_id)
|
||||
displaymarking=displaymarking, msg_stanza_id=msg_stanza_id,
|
||||
encrypted=encrypted)
|
||||
|
||||
def print_conversation(self, text, contact='', tim=None, xhtml=None,
|
||||
graphics=True, displaymarking=None, correct_id=None, msg_stanza_id=None):
|
||||
graphics=True, displaymarking=None, correct_id=None, msg_stanza_id=None,
|
||||
encrypted=None):
|
||||
"""
|
||||
Print a line in the conversation
|
||||
|
||||
|
@ -1233,7 +1237,7 @@ class GroupchatControl(ChatControlBase):
|
|||
ChatControlBase.print_conversation_line(self, text, kind, contact, tim,
|
||||
other_tags_for_name, [], other_tags_for_text, xhtml=xhtml,
|
||||
graphics=graphics, displaymarking=displaymarking,
|
||||
correct_id=correct_id, msg_stanza_id=msg_stanza_id)
|
||||
correct_id=correct_id, msg_stanza_id=msg_stanza_id, encrypted=encrypted)
|
||||
|
||||
def get_nb_unread(self):
|
||||
type_events = ['printed_marked_gc_msg']
|
||||
|
|
|
@ -53,9 +53,16 @@ from common import configpaths
|
|||
gtk_icon_theme = Gtk.IconTheme.get_default()
|
||||
gtk_icon_theme.append_search_path(gajim.ICONS_DIR)
|
||||
|
||||
def get_icon_pixmap(icon_name, size=16, quiet=False):
|
||||
class Color:
|
||||
BLACK = Gdk.RGBA(red=0, green=0, blue=0, alpha=1)
|
||||
|
||||
def get_icon_pixmap(icon_name, size=16, color=None, quiet=False):
|
||||
try:
|
||||
return gtk_icon_theme.load_icon(icon_name, size, 0)
|
||||
iconinfo = gtk_icon_theme.lookup_icon(icon_name, size, 0)
|
||||
if color:
|
||||
pixbuf, was_symbolic = iconinfo.load_symbolic(*color)
|
||||
return pixbuf
|
||||
return iconinfo.load_icon()
|
||||
except GLib.GError as e:
|
||||
if not quiet:
|
||||
log.error('Unable to load icon %s: %s' % (icon_name, str(e)))
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
from gi.repository import Gtk
|
||||
from gi.repository import Gdk
|
||||
from gi.repository import GLib
|
||||
from gi.repository import Pango
|
||||
import os
|
||||
import time
|
||||
from datetime import datetime
|
||||
|
@ -207,6 +208,7 @@ class StatusTable:
|
|||
self.table.insert_row(self.current_row)
|
||||
self.text_label = Gtk.Label()
|
||||
self.text_label.set_line_wrap(True)
|
||||
self.text_label.set_line_wrap_mode(Pango.WrapMode.WORD_CHAR)
|
||||
self.text_label.set_max_width_chars(35)
|
||||
self.text_label.set_halign(Gtk.Align.START)
|
||||
self.text_label.set_valign(Gtk.Align.START)
|
||||
|
|
16
src/vcard.py
16
src/vcard.py
|
@ -404,11 +404,8 @@ class VcardWindow:
|
|||
if self.contact.status:
|
||||
stats += ': ' + self.contact.status
|
||||
status_label = self.xml.get_object('status_label')
|
||||
status_label.set_max_width_chars(15)
|
||||
status_label.set_text(stats)
|
||||
|
||||
status_label_eventbox = self.xml.get_object('status_label_eventbox')
|
||||
status_label_eventbox.set_tooltip_text(stats)
|
||||
status_label.set_tooltip_text(stats)
|
||||
|
||||
def fill_jabber_page(self):
|
||||
self.xml.get_object('nickname_label').set_markup(
|
||||
|
@ -430,7 +427,6 @@ class VcardWindow:
|
|||
else:
|
||||
uf_sub = helpers.get_uf_sub(self.contact.sub)
|
||||
subscription_label.set_text(uf_sub)
|
||||
eb = self.xml.get_object('subscription_label_eventbox')
|
||||
if self.contact.sub == 'from':
|
||||
tt_text = _("This contact is interested in your presence information, but you are not interested in their presence")
|
||||
elif self.contact.sub == 'to':
|
||||
|
@ -439,16 +435,15 @@ class VcardWindow:
|
|||
tt_text = _("The contact and you want to exchange presence information")
|
||||
else: # None
|
||||
tt_text = _("You and the contact have a mutual disinterest in each-others presence information")
|
||||
eb.set_tooltip_text(tt_text)
|
||||
subscription_label.set_tooltip_text(tt_text)
|
||||
|
||||
uf_ask = helpers.get_uf_ask(self.contact.ask)
|
||||
ask_label.set_text(uf_ask)
|
||||
eb = self.xml.get_object('ask_label_eventbox')
|
||||
if self.contact.ask == 'subscribe':
|
||||
tt_text = _("You are waiting contact's answer about your subscription request")
|
||||
else:
|
||||
tt_text = _("There is no pending subscription request.")
|
||||
eb.set_tooltip_text(tt_text)
|
||||
ask_label.set_tooltip_text(tt_text)
|
||||
|
||||
resources = '%s (%s)' % (self.contact.resource, str(
|
||||
self.contact.priority))
|
||||
|
@ -613,11 +608,8 @@ class ZeroconfVcardWindow:
|
|||
if self.contact.status:
|
||||
stats += ': ' + self.contact.status
|
||||
status_label = self.xml.get_object('status_label')
|
||||
status_label.set_max_width_chars(15)
|
||||
status_label.set_text(stats)
|
||||
|
||||
status_label_eventbox = self.xml.get_object('status_label_eventbox')
|
||||
status_label_eventbox.set_tooltip_text(stats)
|
||||
status_label.set_tooltip_text(stats)
|
||||
|
||||
def fill_contact_page(self):
|
||||
self.xml.get_object('nickname_label').set_markup(
|
||||
|
|
Loading…
Reference in New Issue