Fixing some bugs and adding collapsed conversations
authorepage <eopage@byu.net>
Thu, 1 Oct 2009 01:06:18 +0000 (01:06 +0000)
committerepage <eopage@byu.net>
Thu, 1 Oct 2009 01:06:18 +0000 (01:06 +0000)
git-svn-id: file:///svnroot/gc-dialer/trunk@493 c39d3808-3fe2-4d86-a59f-b7f623ee9f21

src/gv_backend.py
src/gv_views.py

index 93ebd65..5b7e7fc 100644 (file)
@@ -504,8 +504,8 @@ class GVDialer(object):
                        yield voicemailData
 
        _smsFromRegex = re.compile(r"""<span class="gc-message-sms-from">(.*?)</span>""", re.MULTILINE | re.DOTALL)
-       _smsTextRegex = re.compile(r"""<span class="gc-message-sms-time">(.*?)</span>""", re.MULTILINE | re.DOTALL)
-       _smsTimeRegex = re.compile(r"""<span class="gc-message-sms-text">(.*?)</span>""", re.MULTILINE | re.DOTALL)
+       _smsTimeRegex = re.compile(r"""<span class="gc-message-sms-time">(.*?)</span>""", re.MULTILINE | re.DOTALL)
+       _smsTextRegex = re.compile(r"""<span class="gc-message-sms-text">(.*?)</span>""", re.MULTILINE | re.DOTALL)
 
        def _parse_sms(self, smsHtml):
                splitSms = self._seperateVoicemailsRegex.split(smsHtml)
@@ -627,7 +627,7 @@ def decorate_message(messageData):
                messages = (messageParts[0][1], )
        else:
                messages = [
-                       "<b>%s</b>: %s" % (messagePart[0], messagePart[-1])
+                       "<b>%s</b>: %s" % (messagePart[0], messagePart[1])
                        for messagePart in messageParts
                ]
 
@@ -663,9 +663,9 @@ def test_backend(username, password):
 
        #print "Messages: ",
        #for message in backend.get_messages():
-       #  pprint.pprint(message)
+       #       pprint.pprint(message)
        #for message in sort_messages(backend.get_messages()):
-       #  pprint.pprint(decorate_message(message))
+       #       pprint.pprint(decorate_message(message))
 
        return backend
 
index 0c07cd1..c59f0bf 100644 (file)
@@ -1216,6 +1216,8 @@ class MessagesView(object):
                """
                pass
 
+       _MIN_MESSAGES_SHOWN = 4
+
        def _idly_populate_messageview(self):
                with gtk_toolbox.gtk_lock():
                        banner = hildonize.show_busy_banner_start(self._window, "Loading Messages")
@@ -1240,12 +1242,19 @@ class MessagesView(object):
                                prettyNumber = make_pretty(prettyNumber)
 
                                firstMessage = "<b>%s - %s</b> <i>(%s)</i>" % (header, prettyNumber, relativeDate)
-                               newMessages = [firstMessage]
-                               newMessages.extend(messages)
+                               expandedMessages = [firstMessage]
+                               expandedMessages.extend(messages)
+                               if (self._MIN_MESSAGES_SHOWN + 1) < len(messages):
+                                       firstMessage = "<b>%s - %s</b> <i>(%s)</i>" % (header, prettyNumber, relativeDate)
+                                       secondMessage = "<i>%d Messages Hidden...</i>" % (len(messages) - self._MIN_MESSAGES_SHOWN, )
+                                       collapsedMessages = [firstMessage, secondMessage]
+                                       collapsedMessages.extend(messages[-self._MIN_MESSAGES_SHOWN-1:-1])
+                               else:
+                                       collapsedMessages = expandedMessages
 
                                number = make_ugly(number)
 
-                               row = (number, relativeDate, header, "\n".join(newMessages), newMessages)
+                               row = (number, relativeDate, header, "\n".join(collapsedMessages), expandedMessages)
                                with gtk_toolbox.gtk_lock():
                                        self._messagemodel.append(row)
                except Exception, e: