Browse Prior Art Database

System and methods for Smart Mirroring in Bi-directional application Interface Disclosure Number: IPCOM000244223D
Publication Date: 2015-Nov-24
Document File: 7 page(s) / 246K

Publishing Venue

The Prior Art Database


Mirroring is a an important property for Bi-directional languages. It is the prerequisite for translating any computer interface application into right to left languages like Arabic, Hebrew, and Persian. Mirroring means flipping the application interface around a vertical imaginary axis, where every component is reallocated and is also right to left oriented as in a mirror. Usually mirroring property is treated as separate property from the translation loading property, which sometimes introduce inconsistency in the application interface for having a mirrored interface with no proper translation and vice versa. The proposed idea provides a design change and technical implementation samples for how to tightly couple both properties to avoid inconsistency in application interface and to guarantee production quality for application.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 27% of the total text.

Page 01 of 7

System and methods for Smart Mirroring in Bi-directional application Interface

This idea tightly couples the mirroring of the GUI (Graphical User Interface) with the

loading of the Bi-directional language translation. Bi-directional languages refer to languages with right to left direction e.g. Arabic, Hebrew, Persian and Urdu. Native users speaking any of these languages expect to see the interface of any computer program to be also right to left oriented (i.e. mirrored). This idea ensures to have a smart mirrored interface to solve the problem of having a mirrored application

without the proper translation loaded and vice versa.

    The idea proposes methods that can smartly detect the need to mirror the Bi-directional user interface based on detecting the existence of the Bi-directional language translation packs. This will eliminate the inconsistency that can arise when one feature is launched without the other, i.e. if the mirroring feature was invoked

without the loading of appropriate Bi-directional translation and vice versa.

    The advantage of using the proposed idea is that it can be extended into systems that correctly mirror the display of a software application based on the actual existence of the Bi-directional language translation. An example of that is a browser plug-in that can invoke the mirroring if and only if the appropriate translation exists on the page of a website. Or an API (Application Programming Interface) that runs on an application, detecting the installed language on runtime and applying mirroring as needed. It is also useful for applications that are based on a framework that supports mirroring, while the application itself does not provide

full Bi-directional language bundles. An example for that are platforms such as Jazz platform. Jazz is an open source web platform that can be extended by different applications by building them on top of that platform. If it supported Bi-directional language translation and mirroring, the new extended applications may not support Bi-directional mirroring or translation. This may lead to inconsistency in the application display since part of the application is mirrored and translated and other parts are not. In such a case the proposed system will be able to stop the mirroring feature since the running on top application page view is partially supported or dominated according to the majority of the existing translation.

    Another advantage for the idea is the ability to invoke mirroring based on dynamically generated page content. For example an application that generates dynamic reports contents. The proposed system can be used to test if the report content on runtime is in Bi-directional language and thus take the proper decision to invoke mirroring or not.

    Mirroring refers to converting the GUI (Graphical User Interface) into right to left orientation. That is the whole GUI is flipped horizontally around a vertical hypothetical axis, where every component is relocat...