Philipp Hörist pushed to branch master at gajim / gajim

Commits:

5 changed files:

Changes:

  • gajim/common/config.py
    ... ... @@ -370,12 +370,6 @@ class Config:
    370 370
             _('Working'): [_('I\'m working.'), 'working', 'other', '', '', ''],
    
    371 371
             _('Phone'): [_('I\'m on the phone.'), 'talking', 'on_the_phone', '', '', ''],
    
    372 372
             _('Out'): [_('I\'m out enjoying life.'), 'relaxing', 'going_out', '', '', ''],
    
    373
    -        '_last_online': ['', '', '', '', '', ''],
    
    374
    -        '_last_chat': ['', '', '', '', '', ''],
    
    375
    -        '_last_away': ['', '', '', '', '', ''],
    
    376
    -        '_last_xa': ['', '', '', '', '', ''],
    
    377
    -        '_last_dnd': ['', '', '', '', '', ''],
    
    378
    -        '_last_offline': ['', '', '', '', '', ''],
    
    379 373
         }
    
    380 374
     
    
    381 375
         soundevents_default = {
    

  • gajim/data/gui/preferences_window.ui
    ... ... @@ -1575,148 +1575,7 @@ $T will be replaced by auto-not-available timeout.</property>
    1575 1575
                   </packing>
    
    1576 1576
                 </child>
    
    1577 1577
                 <child>
    
    1578
    -              <object class="GtkFrame">
    
    1579
    -                <property name="visible">True</property>
    
    1580
    -                <property name="can_focus">False</property>
    
    1581
    -                <property name="label_xalign">0</property>
    
    1582
    -                <property name="shadow_type">none</property>
    
    1583
    -                <child>
    
    1584
    -                  <object class="GtkGrid">
    
    1585
    -                    <property name="visible">True</property>
    
    1586
    -                    <property name="can_focus">False</property>
    
    1587
    -                    <property name="margin_top">6</property>
    
    1588
    -                    <property name="row_spacing">6</property>
    
    1589
    -                    <property name="column_spacing">12</property>
    
    1590
    -                    <child>
    
    1591
    -                      <object class="GtkScrolledWindow" id="scrolledwindow1">
    
    1592
    -                        <property name="height_request">250</property>
    
    1593
    -                        <property name="visible">True</property>
    
    1594
    -                        <property name="can_focus">True</property>
    
    1595
    -                        <property name="hexpand">True</property>
    
    1596
    -                        <property name="vexpand">True</property>
    
    1597
    -                        <property name="shadow_type">in</property>
    
    1598
    -                        <child>
    
    1599
    -                          <object class="GtkTreeView" id="msg_treeview">
    
    1600
    -                            <property name="visible">True</property>
    
    1601
    -                            <property name="can_focus">True</property>
    
    1602
    -                            <property name="model">status_message_liststore</property>
    
    1603
    -                            <property name="headers_visible">False</property>
    
    1604
    -                            <property name="search_column">0</property>
    
    1605
    -                            <signal name="cursor-changed" handler="on_msg_treeview_cursor_changed" swapped="no"/>
    
    1606
    -                            <signal name="key-press-event" handler="on_msg_treeview_key_press_event" swapped="no"/>
    
    1607
    -                            <child internal-child="selection">
    
    1608
    -                              <object class="GtkTreeSelection"/>
    
    1609
    -                            </child>
    
    1610
    -                          </object>
    
    1611
    -                        </child>
    
    1612
    -                      </object>
    
    1613
    -                      <packing>
    
    1614
    -                        <property name="left_attach">0</property>
    
    1615
    -                        <property name="top_attach">0</property>
    
    1616
    -                      </packing>
    
    1617
    -                    </child>
    
    1618
    -                    <child>
    
    1619
    -                      <object class="GtkScrolledWindow" id="scrolledwindow2">
    
    1620
    -                        <property name="visible">True</property>
    
    1621
    -                        <property name="can_focus">True</property>
    
    1622
    -                        <property name="hexpand">True</property>
    
    1623
    -                        <property name="hscrollbar_policy">never</property>
    
    1624
    -                        <property name="vscrollbar_policy">never</property>
    
    1625
    -                        <property name="shadow_type">in</property>
    
    1626
    -                        <child>
    
    1627
    -                          <object class="GtkTextView" id="msg_textview">
    
    1628
    -                            <property name="height_request">21</property>
    
    1629
    -                            <property name="visible">True</property>
    
    1630
    -                            <property name="can_focus">True</property>
    
    1631
    -                            <property name="wrap_mode">word</property>
    
    1632
    -                          </object>
    
    1633
    -                        </child>
    
    1634
    -                      </object>
    
    1635
    -                      <packing>
    
    1636
    -                        <property name="left_attach">0</property>
    
    1637
    -                        <property name="top_attach">1</property>
    
    1638
    -                      </packing>
    
    1639
    -                    </child>
    
    1640
    -                    <child>
    
    1641
    -                      <object class="GtkButtonBox">
    
    1642
    -                        <property name="visible">True</property>
    
    1643
    -                        <property name="can_focus">False</property>
    
    1644
    -                        <property name="halign">start</property>
    
    1645
    -                        <property name="valign">start</property>
    
    1646
    -                        <property name="orientation">vertical</property>
    
    1647
    -                        <property name="spacing">12</property>
    
    1648
    -                        <property name="layout_style">start</property>
    
    1649
    -                        <child>
    
    1650
    -                          <object class="GtkButton" id="new_msg_button">
    
    1651
    -                            <property name="visible">True</property>
    
    1652
    -                            <property name="can_focus">True</property>
    
    1653
    -                            <property name="can_default">True</property>
    
    1654
    -                            <property name="receives_default">False</property>
    
    1655
    -                            <signal name="clicked" handler="on_new_msg_button_clicked" swapped="no"/>
    
    1656
    -                            <child>
    
    1657
    -                              <object class="GtkImage" id="status-message-add">
    
    1658
    -                                <property name="visible">True</property>
    
    1659
    -                                <property name="can_focus">False</property>
    
    1660
    -                                <property name="icon_name">list-add-symbolic</property>
    
    1661
    -                              </object>
    
    1662
    -                            </child>
    
    1663
    -                          </object>
    
    1664
    -                          <packing>
    
    1665
    -                            <property name="expand">False</property>
    
    1666
    -                            <property name="fill">False</property>
    
    1667
    -                            <property name="position">0</property>
    
    1668
    -                          </packing>
    
    1669
    -                        </child>
    
    1670
    -                        <child>
    
    1671
    -                          <object class="GtkButton" id="delete_msg_button">
    
    1672
    -                            <property name="visible">True</property>
    
    1673
    -                            <property name="can_focus">True</property>
    
    1674
    -                            <property name="can_default">True</property>
    
    1675
    -                            <property name="receives_default">False</property>
    
    1676
    -                            <signal name="clicked" handler="on_delete_msg_button_clicked" swapped="no"/>
    
    1677
    -                            <child>
    
    1678
    -                              <object class="GtkImage" id="status-message-remove">
    
    1679
    -                                <property name="visible">True</property>
    
    1680
    -                                <property name="can_focus">False</property>
    
    1681
    -                                <property name="icon_name">list-remove-symbolic</property>
    
    1682
    -                              </object>
    
    1683
    -                            </child>
    
    1684
    -                          </object>
    
    1685
    -                          <packing>
    
    1686
    -                            <property name="expand">False</property>
    
    1687
    -                            <property name="fill">False</property>
    
    1688
    -                            <property name="position">1</property>
    
    1689
    -                          </packing>
    
    1690
    -                        </child>
    
    1691
    -                      </object>
    
    1692
    -                      <packing>
    
    1693
    -                        <property name="left_attach">1</property>
    
    1694
    -                        <property name="top_attach">0</property>
    
    1695
    -                      </packing>
    
    1696
    -                    </child>
    
    1697
    -                    <child>
    
    1698
    -                      <placeholder/>
    
    1699
    -                    </child>
    
    1700
    -                  </object>
    
    1701
    -                </child>
    
    1702
    -                <child type="label">
    
    1703
    -                  <object class="GtkLabel">
    
    1704
    -                    <property name="visible">True</property>
    
    1705
    -                    <property name="can_focus">False</property>
    
    1706
    -                    <property name="label" translatable="yes">Preset Status Messages</property>
    
    1707
    -                    <property name="use_markup">True</property>
    
    1708
    -                    <style>
    
    1709
    -                      <class name="bold"/>
    
    1710
    -                      <class name="margin-top6"/>
    
    1711
    -                    </style>
    
    1712
    -                  </object>
    
    1713
    -                </child>
    
    1714
    -              </object>
    
    1715
    -              <packing>
    
    1716
    -                <property name="expand">True</property>
    
    1717
    -                <property name="fill">True</property>
    
    1718
    -                <property name="position">2</property>
    
    1719
    -              </packing>
    
    1578
    +              <placeholder/>
    
    1720 1579
                 </child>
    
    1721 1580
               </object>
    
    1722 1581
               <packing>
    

  • gajim/data/gui/status_change_window.ui
    1 1
     <?xml version="1.0" encoding="UTF-8"?>
    
    2
    -<!-- Generated with glade 3.36.0 -->
    
    2
    +<!-- Generated with glade 3.22.1 -->
    
    3 3
     <interface>
    
    4 4
       <requires lib="gtk+" version="3.22"/>
    
    5 5
       <object class="GtkPopover" id="preset_popover">
    
    ... ... @@ -116,7 +116,7 @@
    116 116
               </packing>
    
    117 117
             </child>
    
    118 118
             <child>
    
    119
    -          <object class="GtkGrid">
    
    119
    +          <object class="GtkGrid" id="pep_grid">
    
    120 120
                 <property name="visible">True</property>
    
    121 121
                 <property name="can_focus">False</property>
    
    122 122
                 <property name="halign">center</property>
    

  • gajim/gtk/preferences.py
    ... ... @@ -270,17 +270,6 @@ class Preferences(Gtk.ApplicationWindow):
    270 270
             st = app.config.get('ask_offline_status')
    
    271 271
             self._ui.prompt_offline_status_message_checkbutton.set_active(st)
    
    272 272
     
    
    273
    -        # Status messages
    
    274
    -        renderer = Gtk.CellRendererText()
    
    275
    -        renderer.connect('edited', self.on_msg_cell_edited)
    
    276
    -        renderer.set_property('editable', True)
    
    277
    -        col = Gtk.TreeViewColumn('name', renderer, text=0)
    
    278
    -        self._ui.msg_treeview.append_column(col)
    
    279
    -        self.fill_msg_treeview()
    
    280
    -
    
    281
    -        buf = self._ui.msg_textview.get_buffer()
    
    282
    -        buf.connect('end-user-action', self.on_msg_textview_changed)
    
    283
    -
    
    284 273
             ### Style tab ###
    
    285 274
             # Themes
    
    286 275
             self.changed_id = self._ui.theme_combobox.connect(
    
    ... ... @@ -427,11 +416,6 @@ class Preferences(Gtk.ApplicationWindow):
    427 416
             self._ui.connect_signals(self)
    
    428 417
             self.connect('key-press-event', self._on_key_press)
    
    429 418
     
    
    430
    -        self._ui.msg_treeview.get_model().connect('row-changed',
    
    431
    -                                self.on_msg_treemodel_row_changed)
    
    432
    -        self._ui.msg_treeview.get_model().connect('row-deleted',
    
    433
    -                                self.on_msg_treemodel_row_deleted)
    
    434
    -
    
    435 419
             self.sounds_preferences = None
    
    436 420
             self.theme_preferences = None
    
    437 421
     
    
    ... ... @@ -687,111 +671,6 @@ class Preferences(Gtk.ApplicationWindow):
    687 671
         def on_prompt_offline_status_message_checkbutton_toggled(self, widget):
    
    688 672
             self.on_checkbutton_toggled(widget, 'ask_offline_status')
    
    689 673
     
    
    690
    -    def save_status_messages(self, model):
    
    691
    -        for msg in app.config.get_per('statusmsg'):
    
    692
    -            app.config.del_per('statusmsg', msg)
    
    693
    -        iter_ = model.get_iter_first()
    
    694
    -        while iter_:
    
    695
    -            val = model[iter_][0]
    
    696
    -            if model[iter_][1]: # We have a preset message
    
    697
    -                if not val: # No title, use message text for title
    
    698
    -                    val = model[iter_][1]
    
    699
    -                app.config.add_per('statusmsg', val)
    
    700
    -                msg = helpers.to_one_line(model[iter_][1])
    
    701
    -                app.config.set_per('statusmsg', val, 'message', msg)
    
    702
    -                i = 2
    
    703
    -                # Store mood / activity
    
    704
    -                for subname in ('activity', 'subactivity', 'activity_text',
    
    705
    -                'mood', 'mood_text'):
    
    706
    -                    val2 = model[iter_][i]
    
    707
    -                    if not val2:
    
    708
    -                        val2 = ''
    
    709
    -                    app.config.set_per('statusmsg', val, subname, val2)
    
    710
    -                    i += 1
    
    711
    -            iter_ = model.iter_next(iter_)
    
    712
    -
    
    713
    -    def on_msg_treemodel_row_changed(self, model, path, iter_):
    
    714
    -        self.save_status_messages(model)
    
    715
    -
    
    716
    -    def on_msg_treemodel_row_deleted(self, model, path):
    
    717
    -        self.save_status_messages(model)
    
    718
    -
    
    719
    -    def fill_msg_treeview(self):
    
    720
    -        self._ui.delete_msg_button.set_sensitive(False)
    
    721
    -        model = self._ui.msg_treeview.get_model()
    
    722
    -        model.clear()
    
    723
    -        preset_status = []
    
    724
    -        for msg_name in app.config.get_per('statusmsg'):
    
    725
    -            if msg_name.startswith('_last_'):
    
    726
    -                continue
    
    727
    -            preset_status.append(msg_name)
    
    728
    -        preset_status.sort()
    
    729
    -        for msg_name in preset_status:
    
    730
    -            msg_text = app.config.get_per('statusmsg', msg_name, 'message')
    
    731
    -            msg_text = helpers.from_one_line(msg_text)
    
    732
    -            activity = app.config.get_per('statusmsg', msg_name, 'activity')
    
    733
    -            subactivity = app.config.get_per('statusmsg', msg_name,
    
    734
    -                'subactivity')
    
    735
    -            activity_text = app.config.get_per('statusmsg', msg_name,
    
    736
    -                'activity_text')
    
    737
    -            mood = app.config.get_per('statusmsg', msg_name, 'mood')
    
    738
    -            mood_text = app.config.get_per('statusmsg', msg_name, 'mood_text')
    
    739
    -            iter_ = model.append()
    
    740
    -            model.set(iter_, 0, msg_name, 1, msg_text, 2, activity, 3,
    
    741
    -                subactivity, 4, activity_text, 5, mood, 6, mood_text)
    
    742
    -
    
    743
    -    def on_msg_cell_edited(self, cell, row, new_text):
    
    744
    -        model = self._ui.msg_treeview.get_model()
    
    745
    -        iter_ = model.get_iter_from_string(row)
    
    746
    -        model.set_value(iter_, 0, new_text)
    
    747
    -
    
    748
    -    def on_msg_treeview_cursor_changed(self, widget, data=None):
    
    749
    -        sel = self._ui.msg_treeview.get_selection()
    
    750
    -        if not sel:
    
    751
    -            return
    
    752
    -        (model, iter_) = sel.get_selected()
    
    753
    -        if not iter_:
    
    754
    -            return
    
    755
    -        self._ui.delete_msg_button.set_sensitive(True)
    
    756
    -        buf = self._ui.msg_textview.get_buffer()
    
    757
    -        msg = model[iter_][1]
    
    758
    -        buf.set_text(msg)
    
    759
    -
    
    760
    -    def on_new_msg_button_clicked(self, widget, data=None):
    
    761
    -        model = self._ui.msg_treeview.get_model()
    
    762
    -        iter_ = model.append()
    
    763
    -        model.set(
    
    764
    -            iter_, 0, _('status message title'), 1,
    
    765
    -            _('status message text'))
    
    766
    -        self._ui.msg_treeview.set_cursor(model.get_path(iter_))
    
    767
    -
    
    768
    -    def on_delete_msg_button_clicked(self, widget, data=None):
    
    769
    -        sel = self._ui.msg_treeview.get_selection()
    
    770
    -        if not sel:
    
    771
    -            return
    
    772
    -        (model, iter_) = sel.get_selected()
    
    773
    -        if not iter_:
    
    774
    -            return
    
    775
    -        buf = self._ui.msg_textview.get_buffer()
    
    776
    -        model.remove(iter_)
    
    777
    -        buf.set_text('')
    
    778
    -        self._ui.delete_msg_button.set_sensitive(False)
    
    779
    -
    
    780
    -    def on_msg_textview_changed(self, widget, data=None):
    
    781
    -        sel = self._ui.msg_treeview.get_selection()
    
    782
    -        if not sel:
    
    783
    -            return
    
    784
    -        (model, iter_) = sel.get_selected()
    
    785
    -        if not iter_:
    
    786
    -            return
    
    787
    -        buf = self._ui.msg_textview.get_buffer()
    
    788
    -        first_iter, end_iter = buf.get_bounds()
    
    789
    -        model.set_value(iter_, 1, buf.get_text(first_iter, end_iter, True))
    
    790
    -
    
    791
    -    def on_msg_treeview_key_press_event(self, widget, event):
    
    792
    -        if event.keyval == Gdk.KEY_Delete:
    
    793
    -            self.on_delete_msg_button_clicked(widget)
    
    794
    -
    
    795 674
         ### Style ###
    
    796 675
         @staticmethod
    
    797 676
         def on_theme_combobox_changed(combobox):
    

  • gajim/gtk/status_change.py
    ... ... @@ -57,6 +57,7 @@ class StatusChange(Gtk.ApplicationWindow, TimeoutWindow):
    57 57
             self.set_name('StatusChange')
    
    58 58
             self.set_application(app.app)
    
    59 59
             self.set_position(Gtk.WindowPosition.CENTER)
    
    60
    +        self.set_default_size(400, 350)
    
    60 61
             self.set_show_menubar(False)
    
    61 62
             self.set_transient_for(app.interface.roster.window)
    
    62 63
             self.title_text = _('Status Message')  # TimeoutWindow
    
    ... ... @@ -96,14 +97,8 @@ class StatusChange(Gtk.ApplicationWindow, TimeoutWindow):
    96 97
                 self._draw_mood()
    
    97 98
                 self._init_moods()
    
    98 99
             else:
    
    99
    -            self._ui.activity_label.set_no_show_all(True)
    
    100
    -            self._ui.activity_button.set_no_show_all(True)
    
    101
    -            self._ui.mood_label.set_no_show_all(True)
    
    102
    -            self._ui.mood_button.set_no_show_all(True)
    
    103
    -            self._ui.activity_label.hide()
    
    104
    -            self._ui.activity_button.hide()
    
    105
    -            self._ui.mood_label.hide()
    
    106
    -            self._ui.mood_button.hide()
    
    100
    +            self._ui.pep_grid.set_no_show_all(True)
    
    101
    +            self._ui.pep_grid.hide()
    
    107 102
     
    
    108 103
             self._message_buffer.connect('changed', self._stop_timeout)
    
    109 104
             self.connect('key-press-event', self._on_key_press)
    
    ... ... @@ -161,7 +156,7 @@ class StatusChange(Gtk.ApplicationWindow, TimeoutWindow):
    161 156
                 activities = []
    
    162 157
                 subactivities = []
    
    163 158
                 moods = []
    
    164
    -            for account in app.get_connected_accounts():
    
    159
    +            for account in app.connections:
    
    165 160
                     status_messages.append(app.connections[account].status_message)
    
    166 161
                     activity_data = app.connections[account].pep.get(
    
    167 162
                         PEPEventType.ACTIVITY)