Nowadays, more and more people read files (e.g., web pages) on a mobile communication device such as a smart phone, a tablet or a computer. Sometimes, the file may not be optimized for displaying on a screen of the mobile communication device For example, the file may be wider than the screen, in which case, before starting to read next lines, people usually have to move a display window from a rightmost side of the file long-distance back to a leftmost side of the file, by pressing a left/right key on a keyboard or a sliding bar on a touch screen of the mobile communication device.
The invention described herein is illustrated by way of example and not by way of limitation in the accompanying figures. For simplicity and clarity of illustration, elements illustrated in the figures are not necessarily drawn to scale. For example the dimensions of some elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference labels have been repeated among the figures to indicate corresponding or analogous elements.
a-4c illustrate an embodiment of displaying the file.
a-5f illustrate another embodiment of displaying the file.
While the concepts of the present disclosure are susceptible to various modifications and alternative forms, specific exemplary embodiments thereof have been shown by way of example in the drawings and will herein he described in detail. It should be understood, however, that there is no intent to limit the concepts of the present disclosure to the particular forms disclosed, but on the contrary, the>intention is to cover all modifications, equivalents, and alternatives consistent with the present disclosure and the appended claims. In the following description, numerous specific details such as logic implementations, opcodes, means to specify operands, resource partitioning/sharing/duplication implementations, types and interrelationships of system components, and logic partitioning/integration choices are set forth in order to provide a more thorough understanding of the present disclosure. It will be appreciated, however, by one skilled in the art that embodiments of the disclosure may be practiced without such specific details. In other instances, control structures, gate level circuits and fall software instruction sequences lave not been detail in order not to obscure the invention. Those of ordinary skill in the art, with the included descriptions, will be able to implement appropriate functionality without undue experimentation.
References in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” etc., indicate that the embodiment described may include a particular feature, structure or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when, a particular feature, structure, or characteristic is described in connection with an embodiment, it is submitted that it is within the knowledge of one skilled in the art to effect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
Embodiments of the invention may be implemented in hardware, firmware, software, or an combination thereof Embodiments of the invention implemented in a computer system may include one or more bus-based interconnects between components and/or one or more point-to-point interconnects between components. Embodiments of the invention may also be implemented as instructions carried by or stored on a transitory or non-transitory machine-readable (e.g., computer-readable) medium, which may be read and executed by one or more processors. A machine-readable medium may be embodied as any device, mechanism, or physical structure for storing or transmitting information in a form readable by a machine e. computing device). For example, a machine-readable medium may be embodied as read only=memory (ROM); random access memory (RAM); magnetic disk storage media; optical storage media; flash memory devices; mini- or micro-SI) cards, memory sticks, electrical signals, and others.
In the drawings, specific arrangements or orderings of schematic elements, such as those representing devices, modules, instruction blocks, and data, elements. may be shown for ease of description. However, it should be understood by those skilled in the art that the specific ordering or arrangement of the schematic elements in the drawings is not meant to imply that a particular order or sequence of processing or separation of processes, is required. Further, the inclusion of a schematic element in a drawing is not meant to imply that such element is required in all embodiments or that the features represented by such element may not be included in or combined with other elements in some embodiments.
In general, schematic elements used to represent instruction blocks may be implemented using an) suitable form of machine-readable instruction, such as software or firmware applications, programs, functions. modules, routines, processes, procedures. plug-ins, applets, widgets, code fragments and/or others, and that each such instruction may be implemented using any suitable programming language, library, application programming interface (API), and/or other software development tools. For example, some embodiments may be implemented using Java, C++, and/or other programming languages. Similarly, schematic elements used to represent data or information may be implemented using any suitable electronic arrangement or structure, such as a register, data store, table, record, array, index, hash, map, tree, list, graph, file (of any file type), folder, directory, database, and/or others.
Further, in the drawings, where connecting elements, such as solid or dashed lines or arrows, are used to illustrate a connection, relationship or association between or among two or more other schematic elements the absence of any such connecting elements is not meant to imply that no connection, relationship or association can exist. In other words, some connections, relationships or associations between elements may not be shown in the drawings so as not to obscure the disclosure. In addition, for ease of illustration, a single connecting element may be used to represent multiple connections, relationships or associations between elements. For example, were a connecting element represents a communication of signals, data or instructions, it should be understood, by those skilled in the art that such element may represent one or multiple signal paths (e.g., a bus), as may be needed, to effect the communication.
The processor 110 of the mobile communication device 100 may be embodied as any type of processor capable of executing software/firmware, such as a microprocessor, digital signal processor, microcontroller, or the like. The processor 110 is illustratively embodied as a single core processor having a processor core 112. However, in other embodiments, the processor 110 may be embodied as a multi-core processor having multiple processor cores 112. Additionally, the mobile communication device 100 may include additional processors 110 having one or more processor cores 112.
The I/O subsystem 114 of the mobile communication device 100 may be embodied as circuitry and/or components to facilitate input/output operations with the processor 110 and/or other components of the mobile communication device 100. In some embodiments, the PO subsystem 114 may be embodied as a memory controller hub (MCH or “northbridge”), an input/output controller hub (ICH or “southbridge”), and a firmware device. In such embodiments, the firmware device of the I/O subsystem 114 may be embodied, as a memory device for storing Basic Input/Output System (BIOS) data and/or instructions and/or other information (e.g., a BIOS driver used during booting of the mobile communication device 100). However, in other embodiments, I/O subsystems having other configurations may be used. For example, in sonic embodiments, the I/O subsystem 114 may be embodied as a platform controller hub (PCH). such embodiments, the memory controller hub (MCH) may be incorporated in or otherwise associated with the processor 110, and the processor 110 may communicate directly with the memory 116 (as shown by the dashed line in
The processor 110 is communicatively coupled to the I/O subsystem 114 via a number of signal paths. These signal paths (and other signal paths illustrated in
The memory 116 of the mobile communication device 100 may be embodied as or otherwise include one or more memory devices or data storage locations including, for example, dynamic random access memory devices (DRAM), synchronous dynamic random access memory devices (SDRAM), double-data rate synchronous dynamic random access memory device (DDR SDRAM). mask read-only memory (ROM) devices, erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) devices, flash memory devices, and/or other volatile and/or non-volatile memory devices. The memory 116 is communicatively coupled to the I/O subsystem 114 via a number of signal paths. Although only a single memory device 116 is illustrated in
The data storage 118 may be embodied as any type of device or devices configured for the short-term or long-tem storage of data. For example, the data storage 118 may include any one or more memory devices and circuits, memory cards, hard disk drives, solid-state drives, or other data storage devices
The communication circuitry 120 of the mobile communication device 100 may include any number of devices and circuitry for enabling communications between the mobile communication device 100 and one or more devices or networks as discussed in more detail below. The communication circuitry 120 may be configured to use any one or more, or combination thereof, communication protocols to communicate, such as, for example, a cellular communication protocol (e.g., Wideband Code Division Multiple Access (W-CDMA)), a wireless network communication protocol (e.g., Wi-Fi®, WiMAX), a wireless personal area network communication protocol (e.g., Bluetooth®), a wired network communication protocol (e.g., TCP/IP), and/or other communication protocols.
In some embodiments, the mobile communication device 100 may also include one or more peripheral devices 122. Such peripheral devices 122 may include any number of additional input/output devices, interface devices, and/or other peripheral devices. For example, in some embodiments, the peripheral devices 122 may include a display, touch screen, graphics circuitry, keyboard, speaker system, and/or other input/output devices, interface devices, and/or peripheral devices.
The mobile communication device 100 may be embodied as any type of communication device capable of performing the functions described herein. For example, each of the mobile communication device 100 may be embodied as, without limitation, a smart phone, a cellular telephone, a handset, a messaging device, a computer, a tablet computer, a laptop computer, a notebook computer, a mobile computing device, a work station, a network appliance, a web appliance, a distributed computing system, a multiprocessor system, a processor-based system, a consumer mobile communication device, a digital television device, and/or any other communication device configured to securely pair and exchange data.
The apparatus 200 may comprise a duplicating module 202, a displaying module 204 and a movement control module 206. The various modules of the apparatus 200 may be embodied as hardware, software, firmware or the combination thereof. For example, the apparatus 200 may be embedded, into a web browser, book/document reader or similar applications.
The duplicating module 202 may duplicate the leftmost part of the file and place it on the right of the rightmost side of the file. In an embodiment, the duplicated leftmost part of the file may have a width at least as same as the display window.
The displaying module 204 may display the file by moving the display window along a display frame. If the display frame is larger than the file, then the display frame may contain the file and the duplicated leftmost part of the file. Examples of the display frame may be presented in
If the display frame is smaller than the file, the display frame may contain either a part of the file or the rightmost part of the file with the duplicated leftmost part of the file which is placed on the right of the rightmost part. Examples of the display frame may be presented in
The movement control module 206 may detect if the display window moves to a rightmost side of the display frame and control the display window to automatically move to the leftmost side of the display frame. In an embodiment, when generating the display frame, the movement control module may calculate and save a position of a predefined rightmost boundary of the display frame. If the display window moves right and exceeds the boundary, an “automatic move back to the left” mechanism may be triggered. Examples of the display window movements are presented in
In the above embodiments, since the leftmost part of the file is duplicated and placed on the right of the rightmost side of the file, and the display window automatically moves back to the leftmost side of the display frame when reaching the rightmost side of the display frame, the user may be able to view the file without the need of manipulating the move back of the display window, while feeling no disturbance of the display, especially, when the duplicated leftmost part of the file has the width at least as same as the display window.
It should be understood that other embodiments may implement other technologies for the apparatus 200. In an embodiment, the duplicating module 202 may leave a space or a mark between the rightmost part of the file and the duplicated leftmost part of the file on the display frame. In another embodiment, in order to further improve the user experience when viewing the file, especially, if the file is made of word lines, the duplicating module 202 may move up the duplicated leftmost part of the file. e.g., about one line space, and then place it on the right of the rightmost side of the file, as shown in
In blocks 303 and 304, the movement control module 206 or other devices may detect if the display window moves to the rightmost side of the display frame and if the user desires to continue viewing the file. If yes, the movement control module 206 may automatically move the display window to the leftmost side of the display frame, so that the displaying, module 204 may continue displaying the file in circle through moving the display window in one direction, e.g., in right direction, under the user instructions on the keyboard or the touchscreen. In an embodiment, when generating the display frame, the movement control module 206 may calculate and save the position of the predefined rightmost boundary of the display frame. If the display window moves right and exceeds the boundary, an “automatic move back to the left” mechanism may be triggered. Examples of the display window movements are presented in
It should be understood that other embodiments may implement other technologies for the method. In an embodiment. there may be a space or a mark between the rightmost part of the file and the duplicated leftmost part of the tile on the display frame. In another embodiment, in order to further improve the user experience when viewing the file, especially, if the file is made of word lines, the duplicated leftmost part of the file may be moved up, e.g., about one line space, and then be placed to the right of the rightmost side of the file, as shown in
a-4c illustrate an embodiment of displaying the file in case that the display frame is larger than the file. The display frame of
a-5f illustrate another embodiment of displaying the file, in case that the display frame is smaller than the file (
While the disclosure has been illustrated and described in detail in the drawings and foregoing description, such an illustration and description is to be considered as exemplary and not restrictive in character it being understood that only illustrative embodiments have been shown and described and that all changes and modifications consistent with the disclosure and recited claims are desired to be protected.
Illustrative examples of the devices, systems, and methods disclosed herein are provided below. An embodiment of the devices, systems, and methods may include any one or more, and any combination of, the examples described below.
In one example, an apparatus for displaying a file on a mobile communication device may comprise a duplicating, module to duplicate at least a leftmost part of a file to obtain a duplicated leftmost, part of the file; and a displaying module to display a frame through moving a display window along the frame, the frame comprising a rightmost part of the file and the duplicated leftmost part of the file, wherein the duplicated leftmost part of the file is placed on right of the rightmost part of the file.
Additionally, in an example, the apparatus may further comprise a movement control module to control the display window to automatically move to a leftmost side of the frame, if the display window moves to a rightmost side of the frame. Additionally, in any of the above examples, the movement control module may control the display window to automatically move to the leftmost side of the frame, further in response to a user instruction of continuing viewing the file.
Additionally, in any of the above examples, the duplicated leftmost part of the file may be at least as wide as the display window. Additionally, in any of the above example, the rightmost part of the file may be at least as wide as the display window. Additionally, in any of the above examples, the duplicating module may further place a space or a mark between the rightmost part of the file and the duplicated leftmost part of the file. Additionally, in any of the above examples, the duplicating module may further move the duplicated leftmost part of the file up about one line before placing the duplicated leftmost part of the file on the right of rightmost part of the file.
In another example, a method for displaying a file on a mobile communication device may comprise duplicating at least a leftmost part of a file to obtain a duplicated leftmost part of the file; and displaying a frame through moving a display window along the frame, the frame comprising a rightmost part of the file and the duplicated leftmost part of the file, wherein the duplicated leftmost part of the file is placed on right of the rightmost part of the file.
Additionally, in an example, the method may further comprise controlling the display window to automatically move to a leftmost side of the frame, if the display window moves to a rightmost side of the frame. Additionally, in any of the above examples, the controlling the display window to automatically move to the leftmost side of the frame may be performed, further in response to a user instruction of continuing viewing the file. Additionally, in any of the above examples, the duplicated leftmost part of the file may be at least as wide as the display window. Additionally, in any of the above examples, the rightmost part of the file may be at least as wide as the display window.
Additionally, in any of the above examples, the method may further comprising placing a space or a mark between he rightmost part of the file and the duplicated leftmost part of the file. Additionally, in any of the above examples, the method may further comprising moving the duplicated leftmost part of the file up about one line before placing the duplicated leftmost part of the file on the right of rightmost part of the file.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/CN12/80537 | 8/24/2012 | WO | 00 | 11/6/2013 |