Index: src/orca/where_am_I.py
===================================================================
--- src/orca/where_am_I.py	(revision 4662)
+++ src/orca/where_am_I.py	(working copy)
@@ -158,6 +158,8 @@
         if basicOnly:
             self._speakObjDescription(obj)
 
+        self._lastAttributeString = None
+
         return True
 
     def _speakCheckBox(self, obj, basicOnly):
@@ -1665,19 +1667,23 @@
 
     def _getAttributesForChar(self, obj, text, textOffset, line, lineIndex):
 
-        keys = [ "style", "weight", "underline" ]
+        keys = [ "paragraph-style", "style", "weight", "underline" ]
         attribStr = ""
+
+        defaultAttributes = text.getDefaultAttributes()
+        attributesDictionary = self._stringToDictionary(defaultAttributes)
+
         charAttributes = text.getAttributes(textOffset)
-
         if charAttributes[0]:
             charDict = self._stringToDictionary(charAttributes[0])
-            debug.println(self._debugLevel,
-                          "charDict: %s" % (charDict))
+            for key in charDict.keys():
+                attributesDictionary[key] = charDict[key]
 
+        if attributesDictionary:
             for key in keys:
                 localizedKey = text_attribute_names.getTextAttributeName(key)
-                if key in charDict:
-                    attribute = charDict[key]
+                if key in attributesDictionary:
+                    attribute = attributesDictionary[key]
                     localizedValue = \
                         text_attribute_names.getTextAttributeName(attribute)
                     if attribute:
