Mercurial > libervia-backend
comparison frontends/src/primitivus/primitivus @ 1160:2ff15a6c5791
primitivus: moved history method definition out of keypress
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 04 Sep 2014 19:05:57 +0200 |
parents | 85fd02356dba |
children | b32800b9793e |
comparison
equal
deleted
inserted
replaced
1159:85fd02356dba | 1160:2ff15a6c5791 |
---|---|
146 win.historyPrint(size=limit, profile=self.app.profile) | 146 win.historyPrint(size=limit, profile=self.app.profile) |
147 else: | 147 else: |
148 return | 148 return |
149 self.set_edit_text('') | 149 self.set_edit_text('') |
150 | 150 |
151 def _historyCb(self, text): | |
152 self.set_edit_text(text) | |
153 self.set_edit_pos(len(text)) | |
154 | |
151 def keypress(self, size, key): | 155 def keypress(self, size, key): |
152 """Callback when a key is pressed. Send "composing" states | 156 """Callback when a key is pressed. Send "composing" states |
153 and move the index of the temporary history stack.""" | 157 and move the index of the temporary history stack.""" |
154 def history_cb(text): | |
155 self.set_edit_text(text) | |
156 self.set_edit_pos(len(text)) | |
157 | |
158 if key == a_key['MODAL_ESCAPE']: | 158 if key == a_key['MODAL_ESCAPE']: |
159 # first save the text to the current mode, then change to NORMAL | 159 # first save the text to the current mode, then change to NORMAL |
160 self.app._updateInputHistory(self.get_edit_text(), mode=self.mode) | 160 self.app._updateInputHistory(self.get_edit_text(), mode=self.mode) |
161 self.app._updateInputHistory(mode='NORMAL') | 161 self.app._updateInputHistory(mode='NORMAL') |
162 if self._mode == 'NORMAL' and key in self._modes: | 162 if self._mode == 'NORMAL' and key in self._modes: |
163 self.app._updateInputHistory(mode=self._modes[key][0]) | 163 self.app._updateInputHistory(mode=self._modes[key][0]) |
164 if key == a_key['HISTORY_PREV']: | 164 if key == a_key['HISTORY_PREV']: |
165 self.app._updateInputHistory(self.get_edit_text(), -1, history_cb, self.mode) | 165 self.app._updateInputHistory(self.get_edit_text(), -1, self._history_cb, self.mode) |
166 return | 166 return |
167 elif key == a_key['HISTORY_NEXT']: | 167 elif key == a_key['HISTORY_NEXT']: |
168 self.app._updateInputHistory(self.get_edit_text(), +1, history_cb, self.mode) | 168 self.app._updateInputHistory(self.get_edit_text(), +1, self._history_cb, self.mode) |
169 return | 169 return |
170 elif key == a_key['EDIT_ENTER']: | 170 elif key == a_key['EDIT_ENTER']: |
171 self.app._updateInputHistory(self.get_edit_text(), mode=self.mode) | 171 self.app._updateInputHistory(self.get_edit_text(), mode=self.mode) |
172 else: | 172 else: |
173 contact = self.app.contact_list.getContact() | 173 contact = self.app.contact_list.getContact() |