[Bug 1277370] Re: Now used Aiatana design blocks Evince accessibility usage if the current session is not Unity

Attila Hammer hammera at pickup.hu
Sat Feb 8 08:03:01 UTC 2014


I listed the previous comment what shortcuts add the 0001-Port-to-GMenuModel-and-add-menu-bar.patch patch file.
Now, look what shortcuts to remove the 0002-Remove-gtk_application_set_accels_for_actions.patch patch file:
Index: evince-3.10.3/shell/ev-application.c
===================================================================
--- evince-3.10.3.orig/shell/ev-application.c	2014-02-07 14:01:07.235558100 +0000
+++ evince-3.10.3/shell/ev-application.c	2014-02-07 14:01:07.231558100 +0000
@@ -1104,47 +1104,9 @@
                 { "help", app_help_cb, NULL, NULL, NULL },
         };
 
-        const gchar *action_accels[] = {
-          "app.open",                   "<Ctrl>O", NULL,
-          "win.open-copy",              "<Ctrl>N", NULL,
-          "win.save-copy",              "<Ctrl>S", NULL,
-          "win.print",                  "<Ctrl>P", NULL,
-          "win.copy",                   "<Ctrl>C", "<Ctrl>Insert", NULL,
-          "win.select-all",             "<Ctrl>A", NULL,
-          "win.save-settings",          "<Ctrl>T", NULL,
-          "win.go-first-page",          "<Ctrl>Home", NULL,
-          "win.go-last-page",           "<Ctrl>End", NULL,
-          "win.add-bookmark",           "<Ctrl>D", NULL,
-          "win.close",                  "<Ctrl>W", NULL,
-          "win.escape",                 "Escape", NULL,
-          "win.find",                   "<Ctrl>F", "slash", NULL,
-          "win.find-next",              "<Ctrl>G", NULL,
-          "win.find-previous",          "<Ctrl><Shift>G", NULL,
-          "win.select-page",            "<Ctrl>L", NULL,
-          "win.go-backward",            "<Shift>Page_Up", NULL,
-          "win.go-forward",             "<Shift>Page_Down", NULL,
-          "win.go-next-page",           "n", NULL,
-          "win.go-previous-page",       "p", NULL,
-          "win.sizing-mode::fit-page",  "f", NULL,
-          "win.sizing-mode::fit-width", "w", NULL,
-          "win.open-menu",              "F10", NULL,
-          "win.caret-navigation",       "F7", NULL,
-          "win.zoom-in",                "plus", "<Ctrl>plus", "KP_Add", "<Ctrl>KP_Add", NULL,
-          "win.zoom-out",               "minus", "<Ctrl>minus", "KP_Subtract", "<Ctrl>KP_Subtract", NULL,
-          "win.show-side-pane",         "F9", NULL,
-          "win.fullscreen",             "F11", NULL,
-          "win.presentation",           "F5", NULL,
-          "win.rotate-left",            "<Ctrl>Left", NULL,
-          "win.rotate-right",           "<Ctrl>Right", NULL,
-          "win.inverted-colors",        "<Ctrl>I", NULL,
-          "win.reload",                 "<Ctrl>R", NULL,
-          NULL

After this shortcuts remove part you adding following accelerators:
+            gtk_application_add_accelerator (GTK_APPLICATION (application), "<Ctrl>F", "win.find", NULL);
+
             gtk_application_set_app_menu (GTK_APPLICATION (application),
                                           G_MENU_MODEL (gtk_builder_get_object (builder, "appmenu")));
           }
 
-        g_object_unref (builder);
+        gtk_application_add_accelerator (GTK_APPLICATION (application), "F7", "win.caret-navigation", NULL);
 

The shell/menus.ui file you added following accelerators:
       <item>
         <attribute name="label" translatable="yes">_Open</attribute>
         <attribute name="action">app.open</attribute>
+        <attribute name="accel"><Ctrl>O</attribute>
       </item>
     </section>
     <section>
@@ -33,6 +34,7 @@
       <item>
         <attribute name="label" translatable="yes">_Help</attribute>
         <attribute name="action">app.help</attribute>
+        <attribute name="accel">F1</attribute>
       </item>
     </section>
   </menu>
@@ -52,36 +54,43 @@
       <item>
         <attribute name="label" translatable="yes">Side _Pane</attribute>
         <attribute name="action">win.show-side-pane</attribute>
+        <attribute name="accel">F9</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">_Fullscreen</attribute>
         <attribute name="action">win.fullscreen</attribute>
+        <attribute name="accel">F11</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">Pre_sentation</attribute>
         <attribute name="action">win.presentation</attribute>
+        <attribute name="accel">F5</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">Rotate _Left</attribute>
         <attribute name="action">win.rotate-left</attribute>
+        <attribute name="accel"><Ctrl>Left</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">Rotate _Right</attribute>
         <attribute name="action">win.rotate-right</attribute>
+        <attribute name="accel"><Ctrl>Right</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">Zoom _In</attribute>
         <attribute name="action">win.zoom-in</attribute>
+        <attribute name="accel"><Ctrl>plus</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">Zoom _Out</attribute>
         <attribute name="action">win.zoom-out</attribute>
+        <attribute name="accel"><Ctrl>minus</attribute>
       </item>
     </section>
     <section>
@@ -92,12 +101,14 @@
       <item>
         <attribute name="label" translatable="yes">_Inverted Colors</attribute>
         <attribute name="action">win.inverted-colors</attribute>
+        <attribute name="accel"><Ctrl>I</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">_Reload</attribute>
         <attribute name="action">win.reload</attribute>
+        <attribute name="accel"><Ctrl>R</attribute>
       </item>
     </section>
   </menu>
@@ -107,10 +118,12 @@
       <item>
         <attribute name="label" translatable="yes">_Open…</attribute>
         <attribute name="action">app.open</attribute>
+        <attribute name="accel"><Ctrl>O</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">Op_en a Copy</attribute>
         <attribute name="action">win.open-copy</attribute>
+        <attribute name="accel"><Ctrl>N</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">_Recent</attribute>
@@ -120,6 +133,7 @@
       <item>
         <attribute name="label" translatable="yes">_Save a Copy…</attribute>
         <attribute name="action">win.save-copy</attribute>
+        <attribute name="accel"><Ctrl>S</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">Send _To…</attribute>
@@ -132,22 +146,26 @@
       <item>
         <attribute name="label" translatable="yes">_Print…</attribute>
         <attribute name="action">win.print</attribute>
+        <attribute name="accel"><Ctrl>P</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">P_roperties…</attribute>
         <attribute name="action">win.show-properties</attribute>
+        <attribute name="accel"><Alt>Return</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">_Copy</attribute>
         <attribute name="action">win.copy</attribute>
+        <attribute name="accel"><Ctrl>C</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">Select _All</attribute>
         <attribute name="action">win.select-all</attribute>
+        <attribute name="accel"><Ctrl>A</attribute>
       </item>
     </section>
     <section>
@@ -160,22 +178,26 @@
       <item>
         <attribute name="label" translatable="yes">_First Page</attribute>
         <attribute name="action">win.go-first-page</attribute>
+        <attribute name="accel"><Ctrl>Home</attribute>
       </item>
       <item>
         <attribute name="label" translatable="yes">_Last Page</attribute>
         <attribute name="action">win.go-last-page</attribute>
+        <attribute name="accel"><Ctrl>End</attribute>
       </item>
     </section>
     <section id="bookmarks">
       <item>
         <attribute name="label" translatable="yes">_Add Bookmark</attribute>
         <attribute name="action">win.add-bookmark</attribute>
+        <attribute name="accel"><Ctrl>D</attribute>
       </item>
     </section>
     <section>
       <item>
         <attribute name="label" translatable="yes">_Close</attribute>
         <attribute name="action">win.close</attribute>
+        <attribute name="accel"><Ctrl>W</attribute>
       </item>
     </section>

Note: CTRL+LEFT and CTRL+RIGHT keystrokes is normal word navigation
keystrokes (goto next or previous word) if the caret navigation is
enabled. Please not overwrite this general keystrokes if affecting this
keystrokes the caret navigation. If future all accelerators will be
working, not will be conflicting this two accelerators the general caret
navigation keybindings?

Attila


     <section>

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1277370

Title:
  Now used Aiatana design blocks Evince accessibility usage if the
  current session is not Unity

Status in “evince” package in Ubuntu:
  New

Bug description:
  Dear Developers,

  Since Evince 3.10.3-0ubuntu3 version used changes blocks Evince keyboard usage with accessibility related.
  To testing some testcases, please install gnome-shell and gnome-shell-extensions packages, logout and login the gnome-classic session. 
  Two simple testcases if the used session is not Ubuntu (Unity interface), for example gnome, gnome-classic or gnome-flashback:
  1. Launch Evince if you using for example gnome or gnome-classic session.
  2. Press F10 key. Expected result with original upstream version:
  After F10 key press presenting a context menu with have possibility to use importanter functions (open, close, etc).
  Actual result: nothing happening after F10 key press.

  A testcase with Evince accelerators related:
  1. Launch Evince.
  2. Try opening a file with CTRL+O keystroke.
  Expected result with upstream 3.10.3 version: the file open dialog is presenting the screen after CTRL+O keystroke.
  Actual result: nothing happening.

  My conclusion is following with GNOME Shell environment and downstream patched evince 3.10.3-0ubuntu3 and 3.10.3-0ubuntu4 package version related:
  The evince 3.10.3-0ubuntu3 and higher versions killed the original upstream version available accessibility support. Visually impaired users using only with keyboard and screen reader support if entire not see the screen.
  To demonstrate this bad change, try following testcase:
  1. Launch Orca screen reader with orca command.
  2. Launch evince and opening a text containing pdf document (only images containing pdf file is not good now).
  3. Try enabling the F7 keystroke the caret navigation support.
  Expected result with upstream version: a popup message dialog will be presenting the screen after F7 keystroke, and the user have possibility to click enable button.
  When caret navigation support is enabled, visually impaired users have possibility to read text-only pdf documents with Evince the Orca screen reader, full accessible way.
  Actual result with Ubuntu Trusty packaged version: when F7 keystroke is pressed, nothing happening. Impossible to enabling this function, so impossible reading a pdf document with arrow keys the Evince application and Orca screen reader, impossible to selecting only a part of a pdf file, etc.

  Now, I need reverting following patches and using own compiled evince package to I get full the awailable a11y support this application:
  0001-Port-to-GMenuModel-and-add-menu-bar.patch
  0002-Remove-gtk_application_set_accels_for_actions.patch
  If I understanding right the purpose of the second patch, this patch reverting keyboard accelerators with Evince awailable actions.
  If I using temporary my modified evince package, all wrote testcases passed right if I using gnome-classic session.

  Attila

  ProblemType: Bug
  DistroRelease: Ubuntu 14.04
  Package: evince 3.10.3-0ubuntu4
  ProcVersionSignature: Ubuntu 3.13.0-7.26-generic 3.13.1
  Uname: Linux 3.13.0-7-generic i686
  ApportVersion: 2.13.2-0ubuntu2
  Architecture: i386
  CurrentDesktop: GNOME
  Date: Fri Feb  7 07:29:29 2014
  InstallationDate: Installed on 2013-12-13 (55 days ago)
  InstallationMedia: BeLin 3.02 i386
  SourcePackage: evince
  UpgradeStatus: No upgrade log present (probably fresh install)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/evince/+bug/1277370/+subscriptions



More information about the Ubuntu-sponsors mailing list