CROSS-REFERENCE TO RELATED APPLICATIONS
- Top of Page
This application is a Continuation of U.S. application Ser. No. 12/347,873, filed Dec. 31, 2008, entitled “COMPUTING DEVICE AND METHOD FOR SELECTING DISPLAY REGIONS RESPONSIVE TO NON-DISCRETE DIRECTIONAL INPUT ACTIONS AND INTELLIGENT CONTENT ANALYSIS”, which is incorporated herein by reference in its entirety.
- Top of Page
The disclosed embodiments relate to display interfaces for computing devices. More particularly, the disclosed embodiments relate to a computing device and method for selecting display regions responsive to non-discrete input actions and/or intelligent content analysis.
- Top of Page
Computing devices, particularly handheld and portable devices, have evolved to include numerous types of human interface features. Among them, devices now incorporate touch-sensitive displays and sensors in order to enhance the human interaction with the device. Examples of sensors include accelerometers and proximity sensors, which detect information as to movement or where a computing device is being held.
Increasingly, devices are smaller and more intelligent. Thus, while the display size is limited, what can be shown on the relatively small display screens is increasingly more sophisticated. For example, mobile computing devices can routinely display web content, videos, and live television content from one display.
In addition to smaller size and increased processing, computing devices also enable more kinds of user input and actions. For example, gesture input is a type of input that is enabled on mobile computing devices that incorporate touch sensitive display screens. Other devices exist that can detect movement by the user, such as through the motion of arms or the hand.
BRIEF DESCRIPTION OF THE DRAWINGS
- Top of Page
FIG. 1 illustrates a simplified block diagram architecture for enabling features for intelligent scrolling or navigation of display objects on a computing device, according to an embodiment.
FIG. 2 illustrates methods for using non-discrete input actions to select displayed content for re-display, according to embodiments.
FIG. 3A through FIG. 3C illustrates the transformation of a non-discrete directional input action of the user into a vector.
FIG. 4A and FIG. 4B illustrates a user-interface panel on which an embodiment for selecting portions thereof, in response to a non-discrete directional input action, is implemented.
FIG. 5 illustrates another user-interface panel on which another embodiment for selecting a display object in response to a directional input action is implemented.
FIG. 6 illustrates still another user-interface panel on which another embodiment for selecting a display object in response to a directional input action is implemented.
FIG. 7 illustrates a method for re-displaying a region of a display that incorporates selectable data items in excess of a designated criteria, according to an embodiment.
FIG. 8A and FIG. 8B represent user interface panels that are an implementation of an embodiment depicted in FIG. 7.
FIG. 9 illustrates a hardware diagram for a computing device that is configured to implement one or more embodiments.
- Top of Page
Embodiments described herein enhance a user\'s ability to scroll or navigate displayed content on a computing device through use of non-discrete input from a user. In particular, one or more embodiments use logic or intelligence to enhance a user\'s ability to use non-discrete directional input actions to make selections of displayed content. As described, embodiments enhance the user\'s interaction with the computing device, by enabling selection of content in response to non-discrete input actions of the user.
Embodiments described herein include a computing device having a display surface, a human interface feature, and processing resources. The human interface features enables a user of the computing device to enter a non-discrete directional input action. The processing resources execute to: (i) provide content on the display surface; (ii) detect the action the user performs; (ii) determine a vector from the input action; and (iv) select a region of the display surface based on the vector.
In another embodiment, a computing device includes a display region and processing resources that are configured to present content on the display surface, including a plurality of selectable data items on a sub region of the display surface. The processing resources are further configured to analyze at least a portion of a content on display that includes the plurality of selectable data items to determine a spacing between at least some of the plurality of data items. Responsive to determining that the spacing between the selectable data items is less than a pre-determined threshold, the processing resources execute to re-display at least a portion the content to enhance the user\'s ability to select a desired data item and not inadvertently select an undesired data item. For example, content containing closely packed links on a touch-sensitive display surface may be re-displayed to zoom in on the links, thus making the links distinguishable to the user for touch selection.
One or more embodiments described herein provide that methods, techniques and actions performed by a computing device are performed programmatically, or as a computer-implemented method. Programmatically means through the use of code, or computer-executable instructions. A programmatically performed step may or may not be automatic.
One or more embodiments described herein may be implemented using modules. A module may include a program, a subroutine, a portion of a program, or a software component or a hardware component capable of performing one or more stated tasks or functions. As used herein, a module can exist on a hardware component independently of other modules, or a module can be a shared element or process of other modules, programs or machines.
Furthermore, one or more embodiments described herein may be implemented through the use of instructions that are executable by one or more processors. These instructions may be carried on a computer-readable medium. Machines shown in figures below provide examples of processing resources and computer-readable mediums on which instructions for implementing embodiments of the invention can be carried and/or executed. In particular, the numerous machines shown with embodiments of the invention include processor(s) and various forms of memory for holding data and instructions. Examples of computer-readable mediums include permanent memory storage devices, such as hard drives on personal computers or servers. Other examples of computer storage mediums include portable storage units, such as CD or DVD units, flash memory (such as carried on many cell phones and personal digital assistants (PDAs)), and magnetic memory. Computers, terminals, network enabled devices (e.g. mobile devices such as cell phones) are all examples of machines and devices that utilize processors, memory, and instructions stored on computer-readable mediums.
FIG. 1 illustrates a simplified block diagram architecture for enabling features for intelligent scrolling or navigation of display objects on a computing device, according to an embodiment. In an embodiment, a system 100 is implemented on a computing device and includes one or more modules or components that operate to provide a selector 110, a human interface component 104, a presentation component 120, and an interface 128 to an application 136 from which content is generated for display. As described with an embodiment of FIG. 9, system 100 may be implemented on various kinds of devices, including wireless messaging and telephony devices, or wireless/cellular mufti-function devices. System 100 may also be implemented across multiple types of devices. Accordingly, the system 100 may be implemented on the computing device 900 (FIG. 9) running application 136 to generate content on a display of the device. In an embodiment shown by FIG. 1, the application 136 corresponds to a web browser, and the content generated on the display device is web content. However, application 136 may correspond to other kinds of applications, so that other forms of content may be presented for use by system 100. For example, the application 136 may correspond to a mapping application (e.g. GOOGLE EARTH, or map typically displayed with GPS), PDF viewer, Image viewer, or a document display application.
The human interface component 104 may take various forms. In embodiment, the human interface component 104 is provided by touch sensors that are incorporated into a display assembly 920 of the computing device 900 (FIG. 9). The touch sensors detect finger motions or gestures that correspond to a non-discrete input actions 125. However, other devices or types of interfaces may be used to detect such directional input actions. As provided below, non-discrete actions may correspond to acts of the user that require sampling or similar processing in order to be interpreted or processed by a computer. Such acts may be distinguishable from, for example, button presses or actions that actuate switches, as button and switches are discrete input mechanism, and require no sampling to be understood by a computer. The human interface component 104 may further include or use logic (e.g. such as provided by integrated circuits, or by CPU) to calculate the vector 123 from the directional input action 125. Vector 123 may provide a linearized version of the input that enables the directional action 125 of the user to be extrapolated to a region of on a display surface of the computing device 900 (see FIG. 9).
In an embodiment, the interface 128 provides content display information 127 to the selector 110. In an embodiment in which the application 136 is a web browser, the content display information 127 corresponds to document object model (DOM) information, which identifies, for example, the presence and relative position of various display objects and items of content on a given web page or resource. Various other forms of content display information 127 may be used, particularly for other types of applications.
Selector 110 uses the vector 123 to navigate or scroll what is presented on the display. In particular, an embodiment provides that selector 110 uses the vector 123 to navigate or scroll to a display object or region of content that is currently being displayed on a display surface of the computing device. In particular, modules of system 100 process the action 125 to determine the vector 123, and then use the vector 123 to make content selection 121. The content selection 121 may correspond to (i) a region of content on display, or (ii) a display object or set of objects that appear as part of the content on display. For the content selection 121, the presentation component 120 performs an act to redisplay the content selection 121.