Re: [orca-list] Orca doesn't speak after having used stty



Hello,

I confirm the fix for the test case.

At first it didn't work for the issue with EFI3M.

Looking at the differences, I tried to clear the screen even before moving
the line up or down, cf. the attached patch, and that worked, thanks!

However the behavior remains the same using espeakup in a console.

On one hand this is not surprising as then Orca doesn't come into play.

On the other hand I am still eager to know why. I am using the same
version of espeak-ng in both cases. espeakup version O.80 and the
espeak driver shipped in Linux 4.4.132, built-in.

Best regards,

Didier


Le 09/07/2018 à 17:25, Joanmarie Diggs a écrit :
I just committed a change which causes your test case to be presented. I
hope that fixes the underlying problem.

On a related note: What app you're in with respect to the terminal (e.g.
Nano or Vim or some mud or whatever) is not exposed to Orca via AT-SPI2.
In addition, Orca does get a lot of bogus text-related events from the
terminal widget. Thus Orca's terminal script has a bunch of heuristics
trying to guess what is bogus versus what is not, and in the case of the
non-bogus events, what all should be presented to the user.

--joanie

On 07/09/2018 08:46 AM, Didier Spaier wrote:
Sorry, the test case below replace the one I just posted;

<shell script begins>
#!/bin/sh
while [ 0 ]; do
    previous_tty_settings=$(stty -g)
    stty -icanon -echo
     KEY=$(dd bs=3 count=1 2>/dev/null)
    stty "$previous_tty_settings"
     case $KEY in
             "") exit ;;
             $'\x1B'[A) echo "You should hear something, key up" ;;
             $'\x1B'[B) echo "You should hear something, key down" ;;
             *) echo $KEY
     esac
done
<shell script ended>


Le 09/07/2018 à 14:32, Didier Spaier a écrit :
Hello,

Short version:
For the inpatients, here is a small shell script as test case:

<shell begins>
#!/bin/sh
while [ 0 ]; do
    previous_tty_settings=$(stty -g)
    stty -icanon -echo
    KEY=$(dd bs=3 count=1 2>/dev/null)
    stty "$previous_tty_settings"
    case $KEY in
            "") exit ;;
            ) echo "You should hear something, key up" ;;
            ) echo "You should hear something, key down" ;;
            *) echo $KEY
    esac
done
<shell script ended>

The bash-ism is used to enhance readability but you can replace $'\x1B'
by an "escape" character inserted in the file: in your text editor,
holding Ctrl+Shift press u, then press 1 then press b. In some editors
you could need to press Enter after that.

When you execute this script:
1) if you type a letter or another printable character it is both
displayed and spoken.
2) If you press an "up" or "down" arrow key the text argument of the
"echo" command is displayed but not spoken.

Why?

Long version:
I am upgrading EFI3M, upcoming version here:
http://slint.fr/testing/EFI3M

It has many enhancements but one sound issue:
If one want change the order of the boot entries in the menu the procedure is:
1. As root type "sh EFI3M".
2. Press C to Customize the boot menu (will be built if there was none).
3. Press O to change the boot Order.
4. Type the number of a boot entry to select it.
5. Use the up or down arrow keys to move this boot entry up or down.
6. Press Enter when it is at the good place.
7. Move other boot entries if need be, then press Enter.
8. Press C to confirm the changes, then Enter to quit EFI3M.

Example of screen as displayed after step 4or 5:

<screen begins below>
Current menu:
  (sdb1)/EFI/Slint/elilo.efi
  (sdb1)/EFI/Slint/grubx64.efi
  (sdb1)/EFI/EFI3M/BOOTx64.EFI
* (sdb1)/EFI/refind/gptsync/gptsync_x64.efi
  (sdb1)/EFI/BOOT/BOOTx64.EFI
  (sdb1)/EFI/refind/refind_x64.efi

Use the arrow keys to move the selected boot entry up or down,
press enter when you are done
<screen ended above>

This works, and the whole screen is always spoken when is it displayed
after a "clear" command, but at step 5: the selected line is moved up or
down using the arrow keys and this is displayed on the screen, but the
redrawn screen of the terminal (using mate-terminal) is not spoken.

If I do the same in console mode using espeakup, the same occurs but at
each move only the very last line is spoken, so I hear:
press enter when you are done.

In Orca, in laptop mode using "read the whole document" I also hear only
the last line. To hear the whole display on the terminal I need to use
the "window flat review", which I'd rather avoid that users have to do.

Any clue appreciated.

PS I send this message also to the author of "C'est l'histoire d'un 'a'
cf.:
http://dept-info.labri.fr/~thibault/a.html
https://github.com/alex/what-happens-when

hoping as he could shed some light ;)

Best regards,

Didier
_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html
Log bugs and feature requests at http://bugzilla.gnome.org

_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list
Orca wiki: https://wiki.gnome.org/Projects/Orca
Orca documentation: https://help.gnome.org/users/orca/stable/
GNOME Universal Access guide: https://help.gnome.org/users/gnome-help/stable/a11y.html
Log bugs and feature requests at http://bugzilla.gnome.org



Attachment: EFI3M.patch
Description: Text Data



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]