The present disclosure generally relates to the field of graphical user interfaces (GUIs) in processing systems. More particularly, an embodiment of the invention relates to controlling a cursor in a GUI of a processing system.
When using a track pad, mouse or other pointing input device, a cursor is typically shown on a display to indicate the current location of the pointing device. Some processing systems have a track pad, mouse, or other pointing input device as well as a touch screen display. In such a processing system, having dual navigational usage models (e.g., touch screen and track pad, mouse or other pointing device) may result in poor user experiences due to inadequate handling of the cursor.
The detailed description is provided with reference to the accompanying figures. The use of the same reference numbers in different figures indicates similar or identical items.
Embodiments of the present invention overcome deficiencies in existing processing systems having a dual navigation mode. When a processing system has a track pad, mouse, or other pointing input device, and a touch screen, embodiments of the present invention show a cursor on the display when the track pad, mouse, or other pointing input device is being used, and hide the cursor from the display when the touch screen is being used.
In the following description, numerous specific details are set forth in order to provide a thorough understanding of various embodiments. However, various embodiments of the invention may be practiced without the specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail so as not to obscure the particular embodiments of the invention. Further, various aspects of embodiments of the invention may be performed using various means, such as integrated semiconductor circuits (“hardware”), computer-readable instructions organized into one or more programs stored on a computer readable storage medium (“software”), or some combination of hardware and software. For the purposes of this disclosure reference to “logic” shall mean either hardware, software (including for example micro-code that controls the operations of a processor), firmware, or some combination thereof.
In an embodiment, GUI 108 comprises cursor control component 116 to manage the display of the cursor on the touch screen display. Cursor control component 116 may receive input signals, either directly or indirectly, from a mouse, track pad, or other pointing input device, or from touch screen display 110 via display manager 112. In an embodiment, cursor control component 116 determines whether to cause the display of the cursor on the touch screen display or not depending on how the user is using the processing system.
Thus, this cursor control mechanism provides a better user experience because the user sees the cursor on the display when the user operates the track pad, mouse, or other pointing input device, and does not see the cursor on the display when the user operates the touch screen display.
More particularly, the processing system 300 may include one or more central processing unit(s) 302 or processors that communicate via an interconnection network (or bus) 304. Hence, various operations discussed herein may be performed by a processor in some embodiments. Moreover, the processors 302 may include a general purpose processor, a network processor (that processes data communicated over a computer network 303, or other types of a processor (including a reduced instruction set computer (RISC) processor or a complex instruction set computer (CISC)). Moreover, the processors 302 may have a single or multiple core design. The processors 302 with a multiple core design may integrate different types of processor cores on the same integrated circuit (IC) die. Also, the processors 302 with a multiple core design may be implemented as symmetrical or asymmetrical multiprocessors. Moreover, the operations discussed with reference to
A chipset 306 may also communicate with the interconnection network 304. The chipset 306 may include a graphics and memory control hub (GMCH) 308. The GMCH 308 may include a memory controller 310 that communicates with a memory 312. The memory 312 may store data and/or instructions. The data may include sequences of instructions that are executed by the processor 302 or any other device included in the processing system 300. Furthermore, memory 712 may store one or more of the programs or algorithms discussed herein such as cursor control 116, GUI 108, and OS 106, instructions corresponding to executables, mappings, etc. The same or at least a portion of this data (including instructions, and temporary storage arrays) may be stored in disk drive 328 and/or one or more caches within processors 302. In one embodiment of the invention, the memory 312 may include one or more volatile storage (or memory) devices such as random access memory (RAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), static RAM (SRAM), or other types of storage devices. Nonvolatile memory may also be utilized such as a hard disk. Additional devices may communicate via the interconnection network 304, such as multiple processors and/or multiple system memories.
The GMCH 308 may also include a graphics interface 314 that communicates with touch screen display 110. In one embodiment of the invention, the graphics interface 314 may communicate with the touch screen display 110 via an accelerated graphics port (AGP). In an embodiment of the invention, the display 110 may be a flat panel display that communicates with the graphics interface 314 through, for example, a signal converter that translates a digital representation of an image stored in a storage device such as video memory or system memory into display signals that are interpreted and displayed by the display 110. The display signals produced by the interface 314 may pass through various control devices before being interpreted by and subsequently displayed on the display 110. In an embodiment, cursor control 116 may be implemented as circuitry within graphics interface 314 or elsewhere within the chipset.
A hub interface 318 may allow the GMCH 308 and an input/output (I/O) control hub (ICH) 320 to communicate. The ICH 320 may provide an interface to I/O devices that communicate with the processing system 300. The ICH 320 may communicate with a bus 322 through a peripheral bridge (or controller) 324, such as a peripheral component interconnect (PCI) bridge, a universal serial bus (USB) controller, or other types of peripheral bridges or controllers. The bridge 324 may provide a data path between the processor 302 and peripheral devices. Other types of topologies may be utilized. Also, multiple buses may communicate with the ICH 320, e.g., through multiple bridges or controllers. Moreover, other peripherals in communication with the ICH 320 may include, in various embodiments of the invention, integrated drive electronics (IDE) or small computer system interface (SCSI) hard drive(s), USB port(s), a keyboard, a mouse, parallel port(s), serial port(s), floppy disk drive(s), digital output support (e.g., digital video interface (DVI)), or other devices.
The bus 322 may communicate with input devices 326 (such as a track pad, mouse, our other pointing input device), one or more disk drive(s) 328, and a network interface device 330, which may be in communication with the computer network 303 (such as the Internet, for example). In an embodiment, the device 330 may be a network interface controller (NIC) capable of wired or wireless communication. Other devices may communicate via the bus 322. Also, various components (such as the network interface device 330) may communicate with the GMCH 308 in some embodiments of the invention. In addition, the processor 302, the GMCH 308, and/or the graphics interface 314 may be combined to form a single chip.
Furthermore, the processing system 300 may include volatile and/or nonvolatile memory (or storage). For example, nonvolatile memory may include one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), electrically EPROM (EEPROM), a disk drive (e.g., 328), a floppy disk, a compact disk ROM (CD-ROM), a digital versatile disk (DVD), flash memory, a magneto-optical disk, or other types of nonvolatile machine-readable media that are capable of storing electronic data (e.g., including instructions).
In an embodiment, components of the system 300 may be arranged in a point-to-point (PtP) configuration such as discussed with reference to
More specifically,
As illustrated in
The processors 402 and 404 may be any suitable processor such as those discussed with reference to processors 302 of
At least one embodiment of the invention may be provided by utilizing the processors 402 and 404. For example, the processors 402 and/or 404 may perform one or more of the operations of
The chipset 420 may be coupled to a bus 440 using a PtP interface circuit 441. The bus 440 may have one or more devices coupled to it, such as a bus bridge 442 and I/O devices 443. Via a bus 444, the bus bridge 443 may be coupled to other devices such as a keyboard/mouse/track pad 445, the network interface device 430 discussed with reference to
In various embodiments of the invention, the operations discussed herein, e.g., with reference to
Reference in the specification to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment may be included in at least an implementation. The appearances of the phrase “in one embodiment” in various places in the specification may or may not be all referring to the same embodiment.
Also, in the description and claims, the terms “coupled” and “connected,” along with their derivatives, may be used. In some embodiments of the invention, “connected” may be used to indicate that two or more elements are in direct physical or electrical contact with each other. “Coupled” may mean that two or more elements are in direct physical or electrical contact. However, “coupled” may also mean that two or more elements may not be in direct contact with each other, but may still cooperate or interact with each other.
Additionally, such computer-readable media may be downloaded as a computer program product, wherein the program may be transferred from a remote computer (e.g., a server) to a requesting computer (e.g., a client) by way of data signals, via a communication link (e.g., a bus, a modem, or a network connection).
Thus, although embodiments of the invention have been described in language specific to structural features and/or methodological acts, it is to be understood that claimed subject matter may not be limited to the specific features or acts described. Rather, the specific features and acts are disclosed as sample forms of implementing the claimed subject matter.