Repository: nvaccess/nvda

Issue:
Powerpoint: editing text in placeholders is broken in NVDA alpha-20097,6a573cd9
### Steps to reproduce:
1. Open Powerpoint 365, 2016 or 2010
2. With NVDA running, press tab until you hear "title placeholder"
3. Press enter and type "hello"
4. Press arrow keys, enter or delete key

### Actual behavior:
You cannot navigate the text at all, NVDA throws errors. Only using backspace to delete the text will tell you what you have written.
Following error is in the log:
```
IO - inputCore.InputManager.executeGesture (11:40:47.099) - winInputHook (7788):
Input: kb(laptop):rightArrow
DEBUG - IAccessibleHandler.accessibleObjectFromEvent (11:40:47.149) - MainThread (10068):
oleacc.AccessibleObjectFromEvent with window 655948, objectID 148 and childID 0: [WinError -2147467259] Unbekannter Fehler
DEBUG - editableText.EditableText._hasCaretMoved (11:40:47.329) - MainThread (10068):
Caret didn't move before timeout. Elapsed: 100 ms
ERROR - scriptHandler.executeScript (11:40:47.339) - MainThread (10068):
error executing script: <bound method EditableText.script_caret_moveByCharacter of <appModules.powerpnt.TextFrame object at 0x080A0F50>> with gesture 'Pfeiltaste nach rechts'
Traceback (most recent call last):
  File "scriptHandler.pyc", line 205, in executeScript
  File "editableText.pyc", line 223, in script_caret_moveByCharacter
  File "editableText.pyc", line 164, in _caretMovementScriptHelper
  File "NVDAObjects\behaviors.pyc", line 175, in _caretScriptPostMovedHelper
  File "editableText.pyc", line 150, in _caretScriptPostMovedHelper
  File "speech\__init__.pyc", line 1076, in speakTextInfo
  File "speech\types.pyc", line 41, in __iter__
  File "speech\__init__.pyc", line 1116, in getTextInfoSpeech
  File "textInfos\offsets.pyc", line 550, in getTextWithFields
  File "appModules\powerpnt.pyc", line 932, in _getFormatFieldAndOffsets
KeyError: 'reportSuperscriptAndSubscript'
```

### Expected behavior:
No errors and the editing should work like before.
cc: @lukaszgo1, @codeofdusk, @feerrenrut I don't know if this is related to the recent PRs, but report superscript and subscript is disabled in document formating settings.

### System configuration
#### NVDA installed/portable/running from source:
installed

#### NVDA version:
Version: alpha-20097,6a573cd9

#### Windows version:
Windows 10 1909 Update

#### Name and version of other software in use when reproducing the issue:
Powerpoint all versions, it seems the appmodule is broken.

#### Other information about your system:

### Other questions
#### Does the issue still occur after restarting your computer?
yes

#### Have you tried any other versions of NVDA? If so, please report their behaviors.
not yet

#### If addons are disabled, is your problem still occuring?
yes

#### Did you try to run the COM registry fixing tool in NVDA menu / tools?
yes, no effect

Powerpoint: editing text in placeholders is broken in NVDA alpha-20097,6a573cd9
### Steps to reproduce:
1. Open Powerpoint 365, 2016 or 2010
2. With NVDA running, press tab until you hear "title placeholder"
3. Press enter and type "hello"
4. Press arrow keys, enter or delete key

### Actual behavior:
You cannot navigate the text at all, NVDA throws errors. Only using backspace to delete the text will tell you what you have written.
Following error is in the log:
```
IO - inputCore.InputManager.executeGesture (11:40:47.099) - winInputHook (7788):
Input: kb(laptop):rightArrow
DEBUG - IAccessibleHandler.accessibleObjectFromEvent (11:40:47.149) - MainThread (10068):
oleacc.AccessibleObjectFromEvent with window 655948, objectID 148 and childID 0: [WinError -2147467259] Unbekannter Fehler
DEBUG - editableText.EditableText._hasCaretMoved (11:40:47.329) - MainThread (10068):
Caret didn't move before timeout. Elapsed: 100 ms
ERROR - scriptHandler.executeScript (11:40:47.339) - MainThread (10068):
error executing script: <bound method EditableText.script_caret_moveByCharacter of <appModules.powerpnt.TextFrame object at 0x080A0F50>> with gesture 'Pfeiltaste nach rechts'
Traceback (most recent call last):
  File "scriptHandler.pyc", line 205, in executeScript
  File "editableText.pyc", line 223, in script_caret_moveByCharacter
  File "editableText.pyc", line 164, in _caretMovementScriptHelper
  File "NVDAObjects\behaviors.pyc", line 175, in _caretScriptPostMovedHelper
  File "editableText.pyc", line 150, in _caretScriptPostMovedHelper
  File "speech\__init__.pyc", line 1076, in speakTextInfo
  File "speech\types.pyc", line 41, in __iter__
  File "speech\__init__.pyc", line 1116, in getTextInfoSpeech
  File "textInfos\offsets.pyc", line 550, in getTextWithFields
  File "appModules\powerpnt.pyc", line 932, in _getFormatFieldAndOffsets
KeyError: 'reportSuperscriptAndSubscript'
```

### Expected behavior:
No errors and the editing should work like before.
cc: @lukaszgo1, @codeofdusk, @feerrenrut I don't know if this is related to the recent PRs, but report superscript and subscript is disabled in document formating settings.

### System configuration
#### NVDA installed/portable/running from source:
installed

#### NVDA version:
Version: alpha-20097,6a573cd9

#### Windows version:
Windows 10 1909 Update

#### Name and version of other software in use when reproducing the issue:
Powerpoint all versions, it seems the appmodule is broken.

#### Other information about your system:

### Other questions
#### Does the issue still occur after restarting your computer?
yes

#### Have you tried any other versions of NVDA? If so, please report their behaviors.
not yet

#### If addons are disabled, is your problem still occuring?
yes

#### Did you try to run the COM registry fixing tool in NVDA menu / tools?
yes, no effect



Discussion:
Thanks very much Bill for the turbo reaction :-) 
Thanks very much Bill for the turbo reaction :-) 

Resolving patch:
diff --git a/source/appModules/powerpnt.py b/source/appModules/powerpnt.py
--- a/source/appModules/powerpnt.py
+++ b/source/appModules/powerpnt.py
@@ -929,7 +929,7 @@ def _getFormatFieldAndOffsets(self,offset,formatConfig,calculateOffsets=True):
 			formatField['bold']=bool(font.bold)
 			formatField['italic']=bool(font.italic)
 			formatField['underline']=bool(font.underline)
-		if formatConfig['reportSuperscriptAndSubscript']:
+		if formatConfig['reportSuperscriptsAndSubscripts']:
 			if font.subscript:
 				formatField['text-position']='sub'
 			elif font.superscript:


Test patch: