From dhairyashil.bhosale584 at gmail.com Mon Mar 2 05:13:58 2015 From: dhairyashil.bhosale584 at gmail.com (Dhairyashil Bhosale) Date: Mon, 2 Mar 2015 10:43:58 +0530 Subject: [Accessibility-atspi] How to implement AT-SPI in any applciation (java, c, etc.) Message-ID: HI all, Thanks Alejandro for your reply. I am glad for your valuable reply, as per your suggestion, now I am working on java-atk-wrapper.Its worth mentioning that your brief explanation is quite helpful for beginners.Thanks again! With Regards, Dhairyashil On Fri, Feb 27, 2015 at 8:09 PM, Alejandro Pi?eiro wrote: > > On 26/02/15 13:51, Dhairyashil Bhosale wrote: > > Hi all, > > I am new to At-SPI-1.0/2.0, I just successfully initialized > the At-spi-init() method and just print the name of focused application > running on GNOME. I have a lot of queries like: > > 1) Like in At-SPI-1.0 we set accessibility > setting like "putenv("GNOME_ACCESSIBILITY=1");", this but in AT-SPI-2.0 > what parameters we have to set for enabling accessibility setting, for the > time being I start ORCA screen reader and then run AT-SPI-2.0 demo example > , so What parameters we have to set for enabling all accessibility setting > in AT-SPI2.0? > > > First, it is not at-spi-1.0 vs at-spi-2.0. For example at-spi2-2.0 > behaviour at the beginning was basically the same that at-spi1.0. Enable > accessibility is something somewhat more broader. > > Unfortunately there is not a single answer for your question. How to > enable (if needed) accessibility depends on the distro that you are using. > During all this years, there were different ways to enable the > accessibility support. One is the environment variable you mention, and > there was also the gsetting "toolkit-accessibility". You can check this one > like this: > > gsettings get org.gnome.desktop.interface "toolkit-accessibility" > > With a several recent-enough-distro, it would be enough to just set that > gsetting to true. But in any case, you should be able to enable > accessibility using the universal access settings dialog. > > If you want a distro-independent answer, this is how it works on GNOME > upstream: > * Since 2012 accessibility is enabled on default. So for gtk3, > gnome-shell and others, accessibility (so at-spi2) is always enabled. You > don't need to do anything. > * Old applications, mostly using gtk2, are still affected by > toolkit-accessibility gsetting. > > Rationale and some extra details on this email [1]. > > > 2) I am trying to make java application > accessible to orca screen reader using JNI for calling At-spi's method, but > in AT-SPI there are all get method like > " atspi_get_text() " like this, so in simple java ,python or gtk > application How should I implement the At-SPI-2.0 means from application > side we have to set somthing? > > > You are in the wrong side of the application. libatspi is the client > server side library, used to write AT applications like Orca. Or in other > words, libatspi is just used to get the info. Your approach would be valid > if you want to write a screen reader using Java, that as far as I see, is > not what you intend. > > You would need to explore the server side (more below). > > > 3) I am trying to call AT-SPI from java using > JNI interface for making java application accessible to Orca screen reader, > but when I run the java application, the Orca can not read the title bar or > can't access that application, even I tried the Java Accessibility API > (JAAPI). > > > Again, libatspi is the client side library. It is already implemented, in > order to get info from the accessibility APIs. So their purpose is writing > ATs, not to expose the applications > > > SO HOW TO MAKE JAVA APPLICATION ACCESSIBLE TO > ORCA SCREEN READER OR OTHER ASSISTIVE TECH. > > > Take a look to java-atk-wrapper: > https://git.gnome.org/browse/java-atk-wrapper > > This library wraps Java applications (using JNI and all that stuff), > exposing it as another ATK implementation (like those available on gtk, > clutter, etc). Then it uses the server side library at-spi2-atk to expose > the information using at-spi2 APIs. So instead of starting from scratch in > order to make java applications accessible, probably it would be better if > you collaborate with an already started module. > > Best regards > > [1] > https://mail.gnome.org/archives/desktop-devel-list/2012-June/msg00035.html > > -- > Alejandro Pi?eiro (apinheiro at igalia.com) > > -------------- next part -------------- An HTML attachment was scrubbed... URL: From dhairyashil.bhosale584 at gmail.com Wed Mar 4 04:52:40 2015 From: dhairyashil.bhosale584 at gmail.com (Dhairyashil Bhosale) Date: Wed, 4 Mar 2015 10:22:40 +0530 Subject: [Accessibility-atspi] How to implement AT-SPI in any applciation (java, c, etc.) In-Reply-To: References: Message-ID: Hi Magdalen and Alejandro, Hi Magdalen thanks for giving me the useful references for understanding ATK. I am trying to understand Java_ATK_Wrapper, so I will use that in java project, so I have some query like: 1) I successfully install Java-atk-wrapper on Debian, so now I am trying implement Java-atk-wrapper in java swing program, so How to import JAVA_ATK_Wrapper in java project, for that is there any jar file is available? 2) I created simple java swing program and added button and label in that program, so I am trying to Implement Java-atk-wrapper in the swing program and trying to test that, Is that program is accessible with Orca Screen Reader, means can Orca read that button's caption and all? from previous conversion of Alejandro, I got that for making java application accessible to any assistive technology, we need to implement Java-atk-wrapper in java program, so after installing java-atk-wrapper, How can I import java-atk-wrapper in java program. Sorry for late reply. With Regards, Dhairyashil On Mon, Mar 2, 2015 at 6:01 PM, Magdalen Berns wrote: > Hi Dhairyashil, > > It is great to find that you're interested in contributing to the > java-atk-wrapper. Please, take a look at the HACKING file for some idea of > where it is at.[1] The ATK API is a useful reference.[2] > > There is a lot to it but do not let that put you off. We will help where > we can. Please feel free to report any bugs you may find and you are free > to submit patches to bugzilla for review, if you wish to do this.[3] > SwingSet is a good application for testing with and accerciser is a handy > testing tool.[4] Before testing remember to have the setting JAW_DEBUG=1 to > get more information. > > Kind regards, > > Magdalen > > [1] https://git.gnome.org/browse/java-atk-wrapper/tree/HACKING > [2] https://developer.gnome.org/atk/unstable/ > [3] https://bugzilla.gnome.org/enter_bug.cgi?product=java-atk-wrapper > [4] > https://wiki.gnome.org/action/show/Apps/Accerciser?action=show&redirect=Accerciser > > p.s. In case you are not already aware, the accessibility team at GNOME > has an IRC channel called #a11y on gimpnet. > > On Mon, Mar 2, 2015 at 5:13 AM, Dhairyashil Bhosale < > dhairyashil.bhosale584 at gmail.com> wrote: > >> HI all, >> >> >> Thanks Alejandro for your reply. I am glad for your valuable >> reply, as per your suggestion, now I am working on java-atk-wrapper.Its >> worth mentioning that your brief explanation is quite helpful for >> beginners.Thanks again! >> >> >> >> With Regards, >> Dhairyashil >> >> >> >> >> On Fri, Feb 27, 2015 at 8:09 PM, Alejandro Pi?eiro >> wrote: >> >>> >>> On 26/02/15 13:51, Dhairyashil Bhosale wrote: >>> >>> Hi all, >>> >>> I am new to At-SPI-1.0/2.0, I just successfully >>> initialized the At-spi-init() method and just print the name of focused >>> application running on GNOME. I have a lot of queries like: >>> >>> 1) Like in At-SPI-1.0 we set accessibility >>> setting like "putenv("GNOME_ACCESSIBILITY=1");", this but in >>> AT-SPI-2.0 what parameters we have to set for enabling accessibility >>> setting, for the time being I start ORCA screen reader and then run >>> AT-SPI-2.0 demo example , so What parameters we have to set for enabling >>> all accessibility setting in AT-SPI2.0? >>> >>> >>> First, it is not at-spi-1.0 vs at-spi-2.0. For example at-spi2-2.0 >>> behaviour at the beginning was basically the same that at-spi1.0. Enable >>> accessibility is something somewhat more broader. >>> >>> Unfortunately there is not a single answer for your question. How to >>> enable (if needed) accessibility depends on the distro that you are using. >>> During all this years, there were different ways to enable the >>> accessibility support. One is the environment variable you mention, and >>> there was also the gsetting "toolkit-accessibility". You can check this one >>> like this: >>> >>> gsettings get org.gnome.desktop.interface "toolkit-accessibility" >>> >>> With a several recent-enough-distro, it would be enough to just set that >>> gsetting to true. But in any case, you should be able to enable >>> accessibility using the universal access settings dialog. >>> >>> If you want a distro-independent answer, this is how it works on GNOME >>> upstream: >>> * Since 2012 accessibility is enabled on default. So for gtk3, >>> gnome-shell and others, accessibility (so at-spi2) is always enabled. You >>> don't need to do anything. >>> * Old applications, mostly using gtk2, are still affected by >>> toolkit-accessibility gsetting. >>> >>> Rationale and some extra details on this email [1]. >>> >>> >>> 2) I am trying to make java application >>> accessible to orca screen reader using JNI for calling At-spi's method, but >>> in AT-SPI there are all get method like >>> " atspi_get_text() " like this, so in simple java ,python or gtk >>> application How should I implement the At-SPI-2.0 means from application >>> side we have to set somthing? >>> >>> >>> You are in the wrong side of the application. libatspi is the client >>> server side library, used to write AT applications like Orca. Or in other >>> words, libatspi is just used to get the info. Your approach would be valid >>> if you want to write a screen reader using Java, that as far as I see, is >>> not what you intend. >>> >>> You would need to explore the server side (more below). >>> >>> >>> 3) I am trying to call AT-SPI from java using >>> JNI interface for making java application accessible to Orca screen reader, >>> but when I run the java application, the Orca can not read the title bar or >>> can't access that application, even I tried the Java Accessibility API >>> (JAAPI). >>> >>> >>> Again, libatspi is the client side library. It is already implemented, >>> in order to get info from the accessibility APIs. So their purpose is >>> writing ATs, not to expose the applications >>> >>> >>> SO HOW TO MAKE JAVA APPLICATION ACCESSIBLE TO >>> ORCA SCREEN READER OR OTHER ASSISTIVE TECH. >>> >>> >>> Take a look to java-atk-wrapper: >>> https://git.gnome.org/browse/java-atk-wrapper >>> >>> This library wraps Java applications (using JNI and all that stuff), >>> exposing it as another ATK implementation (like those available on gtk, >>> clutter, etc). Then it uses the server side library at-spi2-atk to expose >>> the information using at-spi2 APIs. So instead of starting from scratch in >>> order to make java applications accessible, probably it would be better if >>> you collaborate with an already started module. >>> >>> Best regards >>> >>> [1] >>> https://mail.gnome.org/archives/desktop-devel-list/2012-June/msg00035.html >>> >>> -- >>> Alejandro Pi?eiro (apinheiro at igalia.com) >>> >>> >> >> _______________________________________________ >> gnome-accessibility-list mailing list >> gnome-accessibility-list at gnome.org >> https://mail.gnome.org/mailman/listinfo/gnome-accessibility-list >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: