This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2010-290764, filed Dec. 27, 2010, the entire contents of which are incorporated herein by reference.
Embodiments described herein relate generally to an information processor, an information processing method, and a computer program product.
In recent years, there has been increasing use of information processors such as smart phones and tablet terminals that basically employ touch operation using a touch panel without having an input device such as a keyboard and a mouse. In such information processors, input is provided basically by touch operation on the touch panel. There has been proposed another conventional technology in which an information processor is capable of detecting that the housing is tapped and performing a process associated with the surface of the housing on which this tapping operation is performed.
The information processors described above display graphic use interfaces (GUIs) corresponding to various applications (software) executed on the information processors. Although the touch operation is mainly performed also on the GUIs, the movement amount of a finger increases as the size of the display screen increases, which may cause a load on users. The movement amount of a finger can be reduced by using conventional operating methods in combination. In this case, the operation cannot be performed in units of application (GUI), and thus, there is room for improvement in operability.
A general architecture that implements the various features of the invention will now be described with reference to the drawings. The drawings and the associated descriptions are provided to illustrate embodiments of the invention and not to limit the scope of the invention.
In general, according to one embodiment, an information processor comprises a display module, an acceleration detector, a knocking operation detector, a specifying module, and a processing module. The display module is configured to display information. The acceleration detector is configured to detect acceleration generated in the information processor. The knocking operation detector is configured to detect that a knocking operation is performed on the information processor based on a detection result of the acceleration detector. The specifying module is configured to specify, among sides of a graphical user interface (GUI) displayed on the display screen of the display module, a side on which the knocking operation detected by the knocking operation detector is performed. The processing module is configured to perform a process associated in advance with the side of the GUI specified by the specifying module.
The information processor 100 comprises a thin box-type housing B and a display module 11 on the upper surface of the housing B. The display module 11 comprises a tablet (see a tablet 111 in
The display module 11 comprises the tablet 111 and a display 112 such as a liquid crystal display (LCD) and an organic electroluminescent (EL) display. The tablet 111 comprises, for example, a transparent coordinate detector arranged on the display screen of the display 112. As described above, the tablet 111 can detect the position (touch position) touched by a finger of a user on the display screen. The display screen of the display 112 functions as a touch screen by the function of the tablet 111.
The CPU 12 is a processor controlling the operation of the information processor 100 and controls each component of the information processor 100 via the system controller 13. The CPU 12 executes an operating system and various application programs that are loaded from the nonvolatile memory 17 to the RAM 18 and thus implements each functional module described later (see
The system controller 13 comprises a built-in memory controller that controls access to the nonvolatile memory 17 and the RAM 18. The system controller 13 also has a function to communicate with the graphics controller 14.
The graphics controller 14 is a display controller that controls the display 112 used as a display monitor of the information processor 100. The tablet controller 15 controls the tablet 111 and obtains coordinate data indicating a position touched by a user on the display screen of the display 112.
The acceleration sensor 16 is, for example, a six-axis acceleration sensor that detects, in addition to three axial directions (X, Y, and Z directions) illustrated in
The rotating operation detector 121 detects the rotation angle of an operation (hereinafter, “rotating operation”) for rotating the information processor 100 that is performed on the information processor 100 based on an acceleration detection signal output from the acceleration sensor 16.
Specifically, the rotating operation detector 121 determines, if an acceleration detection signal includes a rotation angle around the Z-axis, whether the rotation angle satisfies a predetermined angle condition (for example, 90 degrees or 270 degrees). If the rotation angle satisfies the predetermined angle condition, the rotating operation detector 121 determines that a rotating operation for rotating the information processor 100 is performed and outputs this rotation angle as a rotating operation detection signal to the display processing controller 123. A known technique using integration or the like is used for the detection of a rotation angle. If an acceleration detection signal output from the acceleration sensor 16 includes a rotation angle, this rotation angle may be used.
The knocking operation detector 122 detects an operation (hereinafter, “knocking operation”) for knocking the information processor 100 that is performed on the information processor 100 (housing B) based on an acceleration detection signal output from the acceleration sensor 16.
Specifically, the knocking operation detector 122 determines, if the acceleration detection signal includes acceleration in one direction (positive direction or negative direction) with respect to the X-axis or the Y axis, whether the magnitude of this acceleration exceeds a predetermine threshold. If the magnitude of the acceleration exceeds the threshold, the knocking operation detector 122 determines that the knocking operation is performed on the information processor 100 and outputs the axial direction (for example, an X-axis positive direction) in which the acceleration is generated, as a knocking operation detection signal, to the display processing controller 123.
The display processing controller 123 displays various images corresponding to the operating system and active applications on the display 112. A whole image displayed on the display 112 will be hereinafter referred to as a screen SC. The screen SC comprises, for example, desktop images provided by the operating system and graphical user interfaces (GUIs) such as images provided by various applications. Each of the GUIs is a rectangle (window form), and a process according to the number of knocking operations described later is associated with any of or the whole of the sides (top, bottom, right, and left) of the rectangle. The details of the process associated with each side are not particularly determined.
Upon receipt of a rotating operation detection signal from the rotating operation detector 121, the display processing controller 123 reversely rotates the screen SC by a rotation angle indicated by the rotating operation detection signal. Thus, the display processing controller 123 switches the display so that the direction of the screen SC is constant viewed from a user operating the information processor 100. The display is preferably switched in units of angle (90 degrees) corresponding to the rectangle shape of the display module 11.
Upon receipt of a knocking operation detection signal from the knocking operation detector 122, the display processing controller 123 specifies, among four sides of the screen SC, the side on which the knocking operation is performed based on the rotation angle of the currently displayed screen SC and an axial direction indicated by the knocking operation detection signal. Specifically, the display processing controller 123 determines which of the top and bottom sides of the screen SC and the right and left sides corresponds to which of the X-axis and the Y-axis based on the rotation angle of the currently displayed screen SC, thereby specifying, among these top, bottom, right, and left sides, the side corresponding to the axial direction indicated by the knocking operation detection signal.
For example, the information processor 100 is rotated 90 degrees to the left around the Z-axis from the state (a rotation angle of 0 degree) illustrated in
If a knocking operation detection signal is output in the state of a rotation angle of 0 degree, the display processing controller 123 determines that the top and bottom sides of the currently displayed screen SC correspond to the Y-axis direction and the right and left sides correspond to the X-axis direction. The display processing controller 123 determines that the knocking operation is performed from the right side direction of the screen SC based on an axial direction “X-axis positive direction” in the knocking operation detection signal (see
On the other hand, if a knocking operation detection signal is output in the state of a rotation angle of 90 degrees, the display processing controller 123 determines that the right and left sides of the currently displayed screen SC correspond to the Y-axis direction and the top and bottom sides correspond to the X-axis direction. Thus, the display processing controller 123 determines that the knocking operation is performed from the right side direction of the screen SC based on an axial direction “Y-axis positive direction” in the knocking operation detection signal (see
In such a manner, the display processing controller 123 associates the direction of knocking operation performed on the information processor 100 with the side direction of the screen SC displayed on the display 112. Thus, it is possible to match the top, bottom, right, and left directions of the information processor 100 with the top, bottom, right, and left directions of the screen SC, respectively, viewed from a user.
Referring back to
The display processing controller 123 functions as a specifying module that specifies, among the sides of a GUI to be operated, a side corresponding to the side direction of the screen SC which is determined as where knocking operation is performed. The display processing controller 123 also functions as a processing module that performs, among processes associated with the sides of the GUI to be operated, the process corresponding to the number of knocking operations. The GUI to be operated refers to a GUI (active window) displayed at the top.
With reference to
If a predetermined number (two) of knocking operations are performed in the X-axis positive direction (arrow direction) on the information processor 100 in the state illustrated in
If a predetermined number (two) of knocking operations are performed in the X-axis negative direction on the information processor 100 in the state illustrated in
In the examples of
If a predetermined number (one) of knocking operations are performed in the X-axis positive direction (arrow direction) in the state illustrated in
If a predetermined number (one) of knocking operations is performed in the X-axis negative direction in the state illustrated in
In the examples of
The flow of information processing performed by the information processor 100 will be described below with reference to
The acceleration sensor 16 waits until it detects acceleration applied from the outside to the information processor 100 (No at S11). If acceleration is detected (Yes at S11), the acceleration sensor 16 outputs an acceleration detection signal including the direction and magnitude of the acceleration to the CPU 12 (S12).
The rotating operation detector 121 determines whether the acceleration detection signal output from the acceleration sensor 16 contains a rotation angle around the Z-axis and whether the rotation angle satisfies a predetermined angle condition to thereby determines whether a rotating operation is performed (S13). If no condition is satisfied, the rotating operation detector 121 determines that the rotating operation is not performed (No at S13), and the control immediately moves to S16.
If the condition is satisfied at S13, the rotating operation detector 121 determines that the rotating operation is performed (Yes at S13), and outputs the rotation angle as a rotating operation detection signal to the display processing controller 123 (S14). Upon receipt of the rotating operation detection signal from the rotating operation detector 121, the display processing controller 123 reversely rotates the screen SC by a rotation angle indicated by the rotating operation detection signal (S15). Then, the control moves to S16.
The knocking operation detector 122 determines whether the acceleration detection signal output from the acceleration sensor 16 includes acceleration in one direction (positive or negative direction) on the X-axis or the Y axis and whether the magnitude of this acceleration exceeds a predetermine threshold to thereby determine whether a knocking operation is performed (S16). If no condition is satisfied, the knocking operation detector 122 determines that the knocking operation is not performed (No at S16), and the control returns to S11.
If the condition is satisfied at S16, the knocking operation detector 122 determines that the knocking operation is performed (Yes at S16), and outputs the axial direction in which the acceleration is generated, as a knocking operation detection signal, to the display processing controller 123 (S17).
Upon receipt of the knocking operation detection signal from the knocking operation detector 122, the display processing controller 123 specifies the side of the screen SC on which the knocking operation is performed based on the rotation angle of the currently displayed screen SC and the axial direction indicated by the knocking operation detection signal (S18). Subsequently, the display processing controller 123 counts the number of knocking operations performed on the side of the screen SC specified at S18 within a predetermined period of time (S19).
The display processing controller 123 specifies, among the sides of a GUI to be operated, a side corresponding to the side of the screen SC specified at S18 (S20). After that, the display processing controller 123 performs, among processes associated with the side specified at S20, a process according to the number of knocking operations counted at S19 (S21). Then, the control returns to S11.
As described above, according to the embodiment, the information processor 100 can perform a process associated with each side of a GUI displayed on the screen SC (on the display screen) of the display module 11 by knocking operation thereon. Thus, the operability of the information processor 100 can be improved.
Even when the information processor 100 rotates, the side of the GUI corresponding to the direction of knocking operation performed on the information processor 100 can be specified based on the direction of the screen SC displayed according to this rotation. Thus, a process desired by a user can be reliably performed.
In the embodiment described above, the display module 11 comprises a touch screen function, but the embodiment is not limited to this. The display module 11 may also be a typical display device having no touch screen function.
The computer program can be executed on a computer to realize the same function as the information processor 100 of the embodiment described above. The computer program may be provided as being stored in a computer-readable storage medium, such as a compact disc-read only memory (CD-ROM), a flexible disk (FD), a compact disc recordable (CD-R), and a digital versatile disc (DVD), as a file in an installable or executable format.
The computer program may also be stored in a computer connected via a network such as the Internet so that it can be downloaded therefrom via the network. Further, the computer program may be provided or distributed via a network such as the Internet.
The various modules of the systems described herein can be implemented as software applications, hardware and/or software modules, or components on one or more computers, such as servers. While the various modules are illustrated separately, they may share some or all of the same underlying logic or code.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Number | Date | Country | Kind |
---|---|---|---|
2010-290764 | Dec 2010 | JP | national |