US20090012952A1 - Apparatus and method for locating a target item in a list - Google Patents

Apparatus and method for locating a target item in a list Download PDF

Info

Publication number
US20090012952A1
US20090012952A1 US11/773,455 US77345507A US2009012952A1 US 20090012952 A1 US20090012952 A1 US 20090012952A1 US 77345507 A US77345507 A US 77345507A US 2009012952 A1 US2009012952 A1 US 2009012952A1
Authority
US
United States
Prior art keywords
location
target item
item
range
list
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US11/773,455
Other versions
US7707205B2 (en
Inventor
Jenny Fredriksson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Mobile Communications AB
Original Assignee
Sony Ericsson Mobile Communications AB
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Ericsson Mobile Communications AB filed Critical Sony Ericsson Mobile Communications AB
Priority to US11/773,455 priority Critical patent/US7707205B2/en
Assigned to SONY ERICSSON MOBILE COMMUNICATIONS AB reassignment SONY ERICSSON MOBILE COMMUNICATIONS AB ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FREDRIKSSON, JENNY
Priority to PCT/IB2007/004125 priority patent/WO2009004402A1/en
Publication of US20090012952A1 publication Critical patent/US20090012952A1/en
Application granted granted Critical
Publication of US7707205B2 publication Critical patent/US7707205B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0489Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using dedicated keyboard keys or combinations thereof
    • G06F3/04892Arrangements for controlling cursor position based on codes indicative of cursor displacements from one discrete location to another, e.g. using cursor control keys associated to different directions or using the tab key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips
    • H04M1/27467Methods of retrieving data
    • H04M1/2747Scrolling on a display

Definitions

  • the present invention relates generally to electronic devices, such as electronic devices for engaging in voice communications. More particularly, the invention relates to a device and method for locating a target item, such as information relating to a specific contact, in a list containing a plurality of such items, such as a contact list, where the list is stored electronically in an electronic device.
  • a target item such as information relating to a specific contact
  • a list containing a plurality of such items, such as a contact list
  • Mobile and/or electronic devices are becoming increasingly popular. For example, mobile telephones and portable media players are now in wide-spread use.
  • the features associated with certain types of electronic devices have become increasingly diverse.
  • many electronic devices include cameras, text messaging capability, Internet browsing functionality, electronic mail capability, video playback capability, audio playback capability, image display capability, navigation capability, and hands-free headset interfaces.
  • Conventional electronic devices often include a contact list for storing contact information, such as phone numbers, email addresses, pictures, etc., of individuals known by a user of the device.
  • contact information such as phone numbers, email addresses, pictures, etc.
  • the contact list may become quite lengthy, including hundreds or even thousands of contacts in any given contact list.
  • conventional media players may include hundreds or even thousands of items such as songs in any given list.
  • Conventional electronic devices often include a relatively small display area, for example, from 3-5 cm. on a side.
  • the resulting “tunnel vision” significantly limits the number of items viewable on the display at any one time to a small fraction of the total number of items that may be stored in the memory of the electronic device.
  • the present invention provides a method and apparatus for easily and efficiently locating an individual item from a large number of items stored in a list of a portable electronic device.
  • the method provides the capability of moving through the list to the target item in a very efficient manner, by use of a logical series of “jumps” down and/or up the list, as needed.
  • the invention relates to a process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, comprising:
  • the present invention relates to a portable electronic device comprising a display, memory and processor programmed to carry out a process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, the process comprising:
  • the range comprises all items on the list.
  • the range comprises a subset of all items on the list.
  • At least one of the first item representing the first end of the range and the last item representing the second end of the range is identified by default values.
  • At least one of the first item representing the first end of the range and the last item representing second end of the range is identified by user input.
  • determining a location of the target item relative to the location “D” is based on user input.
  • the device is programmed to employ standard keys for the user input.
  • the device is programmed to employ standard keys for the user input.
  • the list is stored in the memory.
  • the program comprises logic obtained from logic circuitry, software, firmware or a combination of any two or more thereof.
  • the present invention relates to a method of locating a target item in a list of items in a portable electronic device, including:
  • a portable electronic device comprising a display, a memory and a processor programmed to carry out the process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, the process comprising:
  • FIG. 1 is a schematic view of a mobile telephone as an exemplary electronic device that includes programming for locating a target item in accordance with the present invention
  • FIG. 2 is a block diagram illustrating items listed in the display of a mobile telephone during an exemplary search for a specific target item, in accordance with an embodiment of the invention
  • FIG. 3 is a schematic block diagram of the mobile telephone of FIG. 1 ;
  • FIG. 4 is a schematic diagram of a communications system in which the mobile telephone of FIG. 1 may operate;
  • FIG. 5 is a flow chart representing an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1 ;
  • FIG. 6 is a schematic illustration of selection of points for carrying out the method in accordance with an embodiment of the present invention, as described above with respect to FIG. 5 ;
  • FIG. 7 is a schematic illustration of another embodiment of the selection of points for carrying out the method in accordance with an embodiment of the present invention, as described above with respect to FIG. 5 ;
  • FIG. 8 is a flow chart representing another embodiment of an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1 ;
  • FIG. 9 is a schematic illustration of still another embodiment of the selection of points for carrying out the method in accordance with another embodiment of the present invention, as described above with respect to FIG. 8 ;
  • FIG. 10 is an overall flow chart representing an embodiment of an exemplary method of locating a target item in accordance with the present invention.
  • the interchangeable terms “electronic equipment” and “electronic device” include portable radio communication equipment.
  • portable radio communication equipment which hereinafter is referred to as a “mobile radio terminal,” includes all equipment such as mobile telephones, pagers, communicators, electronic organizers, personal digital assistants (PDAs), smartphones, portable communication apparatus or the like.
  • PDAs personal digital assistants
  • embodiments are described primarily in the context of a mobile telephone. It will be appreciated, however, that the exemplary context of a mobile telephone is not the only context and the context may relate to any type of appropriate electronic equipment, examples of which include a media player, a gaming device and a computer.
  • the present invention is described with respect to a device having physically activatable keys for selection of items in accordance with the invention, the present invention is equally applicable to devices in which virtual keys or other selectable elements are provided, such as on a touchscreen or other such display/keyboard or display/selectable item combination.
  • the appropriate functions for carrying out the present invention would be applied to the touchscreen or other virtual keys or selectable elements in ways corresponding to those described herein, as will be readily understood by the skilled artisan.
  • the electronic device 10 includes a search function 12 that is configured to locate a specific target item of information in a list or lists contained within the electronic device. Additional details and operation of the search function 12 will be described in greater detail below.
  • the search function 12 may be embodied as executable code that is resident in and executed by the electronic device 10 .
  • the search function 12 may be a program stored on a or machine readable medium such as non-volatile memory or the like.
  • the search function 12 may be a stand-alone software application or form a part of a software application that carries out additional tasks related to the electronic device 10 .
  • the electronic device of the illustrated embodiment is a mobile telephone and will be referred to as the mobile telephone 10 .
  • the mobile telephone 10 is shown as having a “brick” or “block” form factor housing, but it will be appreciated that other housing types may be utilized, such as a “flip-open” form factor (e.g., a “clamshell” housing) or a slide-type form factor (e.g., a “slider” housing).
  • the mobile telephone 10 includes a display 14 .
  • the display 14 displays information to a user such as operating state, time, telephone numbers, contact information, various navigational menus, etc., that enable the user to utilize the various features of the mobile telephone 10 .
  • the display 14 also may be used to visually display content received by the mobile telephone 10 and/or retrieved from a memory 16 ( FIG. 3 ) of the mobile telephone 10 .
  • the display 14 may be used to present images, video and other graphics to the user, such as photographs, mobile television content and video associated with games.
  • a keypad 18 provides for a variety of user input operations.
  • the keypad 18 may include alphanumeric keys for allowing entry of alphanumeric information such as telephone numbers, phone lists, contact information, notes, text, etc.
  • the keypad 18 may include special function keys such as a “call send” key for initiating or answering a call, and a “call end” key for ending or “hanging up” a call.
  • Special function keys also may include menu navigation and select keys to facilitate navigating through a menu displayed on the display 14 . For instance, a pointing device and/or navigation keys may be present to accept directional inputs from a user.
  • Special function keys may include audiovisual content playback keys to start, stop and pause playback, skip or repeat tracks, and so forth.
  • keys associated with the mobile telephone may include a volume key, an audio mute key, an on/off power key, a web browser launch key, a camera key, etc. Keys or key-like functionality also may be embodied as a touch screen associated with the display 14 . Also, the display 14 and keypad 18 may be used in conjunction with one another to implement soft key functionality.
  • the key 48 may be used in the present invention, for example, for functions to be described below, such as SELECT, ARROW UP, and ARROW DOWN, as well as for standard navigation actions.
  • the key 48 can be used for scrolling up, down or sideways, and the “select” button may be used as in known in the art.
  • the SEARCH function may be activated from a menu displayed on the display 14 .
  • the multi-function navigation and selection key 48 may be configured such that the “select” button functions as SELECT, the up arrow functions as ARROW UP, the down arrow functions as ARROW DOWN, and the left/right arrows function to begin or end the search process, or to take other actions.
  • the keys or touchpad items may be programmed to function as “soft” buttons for these or other uses, as will be understood by the skilled artisan.
  • FIG. 2 is a block diagram illustrating items listed in the display of a mobile telephone during an exemplary search for a specific target item, in accordance with an embodiment of the invention.
  • the user is searching for a specific target item, a contact by the name of “Carol Cat woman” on a list of contacts beginning with Sam Abe (shown as “Abe, Sam”) and ending at the other end of the alphabet.
  • the method causes the display “D” to move to display an item located halfway from the beginning of the list to the end of the list which, in this example, is “Mercer, Helen”, as shown (underlined) in FIG. 2 .
  • This action results in determination of a new, third, “D” which is halfway between the second “D” (“Ganaard, Smiley”) and the beginning of the list.
  • the item displayed at the third “D” is “Callas, Bruce”, as shown in FIG. 2 .
  • the user could continue the search, this time by pressing the “ARROW DOWN” key, to determine, move to and display a fourth “D”.
  • the desired target item, “Cat woman, Carol” is visible in the display.
  • the desired target item, “Cat woman, Carol” is considered to be adjacent to the currently displayed “D”.
  • the user may press an appropriate key to end the search, and simply “SCROLL DOWN” two steps to the desired target item, “Cat woman, Carol”.
  • the user may then “SELECT” desired target item, “Cat woman, Carol”, at which point, in this example, the contact information for Carol Cat woman is displayed.
  • other actions may be taken upon activating a “SELECT” function, such as displaying information about the song or movie, etc., that is the target item.
  • the device and method may include an option for contacting the contact by telephone or email directly, or playing the song or movie directly, rather than displaying the contact, song, movie or other information.
  • FIG. 2 simply illustrates an example of how the present invention may be applied in a particular context to assist in understanding the present invention, but should not be considered as limiting the scope of the invention, which is limited only by the scope of the appended claims.
  • the mobile telephone 10 includes call circuitry that enables the mobile telephone 10 to establish a call and/or exchange signals with a called/calling device, which typically may be another mobile telephone or landline telephone.
  • a called/calling device typically may be another mobile telephone or landline telephone.
  • the called/calling device need not be another telephone, but may be some other device such as an Internet web server, content providing server, etc. Calls may take any suitable form.
  • the call could be a conventional call that is established over a cellular circuit-switched network or a voice over Internet Protocol (VoIP) call that is established over a packet-switched capability of a cellular network or over an alternative packet-switched network, such as WiFi (e.g., a network based on the IEEE 802.11 standard), WiMax (e.g., a network based on the IEEE 802.16 standard), etc.
  • VoIP voice over Internet Protocol
  • WiFi e.g., a network based on the IEEE 802.11 standard
  • WiMax e.g., a network based on the IEEE 802.16 standard
  • Another example includes a video enabled call that is established over a cellular or alternative network.
  • the mobile telephone 10 may be configured to transmit, receive and/or process data, such as text messages, instant messages, electronic mail messages, multimedia messages, image files, video files, audio files, ring tones, streaming audio, streaming video, data feeds (including podcasts and really simple syndication (RSS) data feeds), and so forth.
  • data such as text messages, instant messages, electronic mail messages, multimedia messages, image files, video files, audio files, ring tones, streaming audio, streaming video, data feeds (including podcasts and really simple syndication (RSS) data feeds), and so forth.
  • SMS simple message service
  • SMS is a typical standard for exchanging text messages.
  • a multimedia message is commonly referred to by some as “an MMS,” which stands for multimedia message service.
  • MMS is a typical standard for exchanging multimedia messages.
  • Processing data may include storing the data in the memory 16 , executing applications to allow user interaction with the data, displaying video and/or image content associated with the data, outputting audio sounds associated with the data, and so forth.
  • FIG. 3 represents a functional block diagram of the mobile telephone 10 .
  • the mobile telephone 10 includes a primary control circuit 20 that is configured to carry out overall control of the functions and operations of the mobile telephone 10 .
  • the control circuit 20 may include a processing device 22 , such as a central processing unit (CPU), microcontroller or microprocessor.
  • the processing device 22 executes code stored in a memory (not shown) within the control circuit 20 and/or in a separate memory, such as the memory 16 , in order to carry out operation of the mobile telephone 10 .
  • the control circuit 20 may carry out timing functions, such as timing the durations of calls, generating the content of time and date stamps, and so forth.
  • the memory 16 may be, for example, one or more of a buffer, a flash memory, a hard drive, a removable media, a volatile memory, a non-volatile memory, a random access memory (RAM), or other suitable device.
  • the memory 16 may include a non-volatile memory (e.g., a NAND or NOR architecture flash memory) for long term data storage and a volatile memory that functions as system memory for the control circuit 20 .
  • the volatile memory may be a RAM implemented with synchronous dynamic random access memory (SDRAM).
  • SDRAM synchronous dynamic random access memory
  • the memory 16 may exchange data with the control circuit 20 over a data bus. Accompanying control lines and an address bus between the memory 16 and the control circuit 20 also may be present.
  • the processing device 22 may execute code that implements the search function 12 . It will be apparent to a person having ordinary skill in the art of computer programming, and specifically in application programming for mobile telephones or other electronic devices, how to program a mobile telephone 10 to operate and carry out logical functions associated with the search function 12 . Accordingly, details as to specific programming code have been left out for the sake of brevity. Also, while the search function 12 is executed by the processing device 22 in accordance with an embodiment, such functionality could also be carried out via dedicated hardware or firmware, or some combination of hardware, firmware and/or software.
  • the mobile telephone 10 includes an antenna 24 coupled to a radio circuit 26 .
  • the radio circuit 26 includes a radio frequency transmitter and receiver for transmitting and receiving signals via the antenna 24 .
  • the radio circuit 26 may be configured to operate in a mobile communications system and may be used to send and receive data and/or audiovisual content.
  • Receiver types for interaction with a mobile radio network and/or broadcasting network include, but are not limited to, global system for mobile communications (GSM), code division multiple access (CDMA), wideband CDMA (WCDMA), general packet radio service (GPRS), WiFi, WiMax, digital video broadcasting-handheld (DVB-H), integrated services digital broadcasting (ISDB), etc., as well as advanced versions of these standards.
  • the mobile telephone 10 further includes a sound signal processing circuit 28 for processing audio signals transmitted by and received from the radio circuit 26 . Coupled to the sound processing circuit 28 are a speaker 30 and a microphone 32 that enable a user to listen and speak via the mobile telephone 10 as is conventional.
  • the radio circuit 26 and sound processing circuit 28 are each coupled to the control circuit 20 so as to carry out overall operation. Audio data may be passed from the control circuit 20 to the sound signal processing circuit 28 for playback to the user.
  • the audio data may include, for example, audio data from an audio file stored by the memory 16 and retrieved by the control circuit 20 , or received audio data such as in the form of streaming audio data from a mobile radio service.
  • the sound processing circuit 28 may include any appropriate buffers, decoders, amplifiers and so forth.
  • the display 14 may be coupled to the control circuit 20 by a video processing circuit 34 that converts video data to a video signal used to drive the display 14 .
  • the video processing circuit 34 may include any appropriate buffers, decoders, video data processors and so forth.
  • the video data may be generated by the control circuit 20 , retrieved from a video file that is stored in the memory 16 , derived from an incoming video data stream that is received by the radio circuit 28 or obtained by any other suitable method.
  • the mobile telephone 10 may further include one or more I/O interface(s) 36 .
  • the I/O interface(s) 36 may be in the form of typical mobile telephone I/O interfaces and may include one or more electrical connectors.
  • the I/O interface(s) 36 may be used to couple the mobile telephone 10 to a battery charger to charge a battery of a power supply unit (PSU) 38 within the mobile telephone 10 .
  • the I/O interface(s) 36 may serve to connect the mobile telephone 10 to a headset assembly (e.g., a personal handsfree (PHF) device) that has a wired interface with the mobile telephone 10 .
  • a headset assembly e.g., a personal handsfree (PHF) device
  • the I/O interface(s) 36 may serve to connect the mobile telephone 10 to a personal computer or other device via a data cable for the exchange of data.
  • the mobile telephone 10 may receive operating power via the I/O interface(s) 36 when connected to a vehicle power adapter or an electricity outlet power adapter.
  • the PSU 38 may supply power to operate the mobile telephone 10 in the absence of an external power source.
  • the mobile telephone 10 also may include a system clock 40 for clocking the various components of the mobile telephone 10 , such as the control circuit 20 and the memory 16 .
  • the mobile telephone 10 may include a camera 42 for taking digital pictures and/or movies. Image and/or video files corresponding to the pictures and/or movies may be stored in the memory 16 .
  • the mobile telephone 10 also may include a position data receiver 44 , such as a global positioning system (GPS) receiver, Galileo satellite system receiver or the like.
  • the position data receiver 44 may be involved in determining the location of the mobile telephone 10 .
  • the mobile telephone 10 also may include a local wireless interface 46 , such as an infrared transceiver and/or an RF interface (e.g., a Bluetooth interface), for establishing communication with an accessory, another mobile radio terminal, a computer or another device.
  • a local wireless interface 46 may operatively couple the mobile telephone 10 to a headset assembly (e.g., a PHF device) in an embodiment where the headset assembly has a corresponding wireless interface.
  • the mobile telephone 10 may be configured to operate as part of a communications system 48 .
  • the system 48 may include a communications network 50 having a server 52 (or servers) for managing calls placed by and destined to the mobile telephone 10 , transmitting data to the mobile telephone 10 and carrying out any other support functions.
  • the server 52 communicates with the mobile telephone 10 via a transmission medium.
  • the transmission medium may be any appropriate device or assembly, including, for example, a communications tower (e.g., a cell tower), another mobile telephone, a wireless access point, a satellite, etc. Portions of the network may include wireless transmission pathways.
  • the network 50 may support the communications activity of multiple mobile telephones 10 and other types of end user devices.
  • electronic devices such as the mobile telephone 10 usually include a list of contacts. With increases in use, the list of contacts may become extensive, making difficult the locating of any particular item on the list. In other portable electronic devices, such as MP3 players, many of which are capable of storing hundreds or thousand of songs in gigabyte quantities, the extensive list similarly makes difficult the location of a particular song.
  • the present invention provides a method to greatly simplify locating such items on a list in an electronic device. An example has been described above with respect to FIG. 2 . The process described with respect to FIG. 2 may be adapted to conduct any search within the scope of the present invention, in accordance with the more general principles set forth in the following.
  • the invention relates to a process for locating a target item within a list including a plurality of m items in numerical sequence from 0 to m, including:
  • adjacent means that the target item is displayed on a display screen of the electronic device, and may be immediately next to an item designated by “D”, or may be removed one or more items, as long as it is visible to the user on the display screen.
  • FIG. 5 is a flow chart representing an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1 .
  • the method starts when a user presses a search key on a keypad to initiate a search, in step S 10 .
  • the key may be a dedicated “search” function key or, more often, will be an activation key used to select a “search” function from a list of possible functions.
  • Initiating the search may include, for example, display of a query to the user whether the search should begin at a designated location on the list or if, e.g., by default, the search should begin with the first item on the list.
  • a query may be displayed to the user whether the search should end at a designated location on the list or if, e.g., by default, the search should end with the last item on the list.
  • the user may designate and/or be queried to designate an alphabetical letter, e.g., letter “G”, in which the target item is expected to be located.
  • step S 30 the program queries whether the user has input a numerical value for “p”. If yes, the value that was input is assigned to “p”. If no, then the program sets “p” equal to the numerical value of m, the final item number on the list.
  • the list to be searched includes all of the items on the list, i.e., numbered from 0 to m.
  • the method causes the electronic device display to show the item stored at location “D”. The user can then see the item stored at location “D” and determine whether this is the target item. If the item at location “D” is the target item, then the user can press a “SELECT” key or activate a “SELECT” option, in step S 50 . As shown in FIG. 5 , in step S 50 , if the “SELECT” option is YES, then since the item stored at location “D” is the target item, the process terminates and the target item is displayed.
  • items on the list adjacent to the item stored a location “D” may also be displayed. In one embodiment, at least immediately adjacent items are shown, for convenience, to avoid the necessity of conducting another search cycle when the target item is within one or two items of the item at the location “D”. If the item at the location “D” is not the target item, then the user presses another key on the keypad, such as an “UP” arrow key, to indicate the target item is between “n” and “D”, or a “DOWN” arrow key, to indicate the target item is between “D” and “p”. Either the “UP” or “DOWN” arrow key must be pressed, if the “SELECT” key is not pressed. As shown in FIG.
  • step S 60 if in step S 60 the “UP” arrow key is pressed, then the value of “p” is reset to the value of “D” used in the immediately preceding iteration, and the process returns to step S 40 in which a new value of “D” is calculated, retaining the original value of “n”. If in step S 70 , the “DOWN” arrow is pressed, then the value of “n” is reset to the value of “D” used in the immediately preceding iteration, and the process returns to step S 40 in which a new value of “D” is calculated, retaining the original value of “p”. This process continues, repeating the steps of resetting the value of “p” or “n”, identifying and displaying a value of “D”, and determining if the target item is at the location “D”, until the target item is located.
  • the target item may be located when it is at or adjacent to the location “D” as determined in step S 40 .
  • the user may scroll to or otherwise select the target item and proceed as if the target item had been directly located by the process. This option is sometimes referred to herein as when the target item is “adjacent” to the location “D”, as opposed to being exactly “at” the location D.
  • the user may terminate the search process by selecting an “end” function key, for example, then using the arrow keys to scroll up or down to the “adjacent” target item visible in the display, and then selecting the target item for detailed display, direct contact, or playing a song, for example.
  • An example of locating and selecting a target item adjacent to the location “D” in a contact list of names has been described above in the example shown in FIG. 2 .
  • FIGS. 6 and 7 provide examples of the process of FIG. 5 , in which either the entire list is searched or a numerically defined subset of the list is selected for searching.
  • FIG. 6 is a schematic illustration of selection of points for carrying out the method in accordance with an embodiment of the present invention, as described above with respect to FIG. 5 .
  • the initial value of “n” is zero, corresponding to the first contact on the list, and the initial value of “p” is set to be equal to the value “m”, which is the number associated with the last or final item on the list.
  • Subsequent iterations of the search will of course redefine or reset the values of “n” and “p” depending on the location of the sought target item with respect to the value of “D” determined by each such iteration of the process of FIG. 5 .
  • FIG. 7 is a schematic illustration of another option for selection of points for carrying out the method in accordance with another embodiment of the present invention, as described above with respect to FIG. 5 .
  • the initial value of “n” is two (2), corresponding to the third contact (or item) on the list, and the initial value of “p” is set to be equal to 46, which is the number associated with the forty-sixth contact (or item) on the list.
  • Subsequent iterations of the search will of course redefine or reset the values of “n” or “p” as appropriate depending on the location of the sought target item with respect to the value of “D” determined by each such iteration of the process of FIG. 5 .
  • FIG. 8 is a flow chart representing another embodiment of an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1 .
  • the flow chart in FIG. 8 is similar to that in FIG. 5 , except that in step S 20 B, an alphabetical letter is entered instead of the numerical value of “n” being entered as shown in step S 20 A.
  • step S 20 B an alphabetical letter is entered instead of the numerical value of “n” being entered as shown in step S 20 A.
  • the process defaults to step S 20 A of the flow chart shown in FIG. 5 , and the process continues as described above with respect to FIG. 5 .
  • the initial value of “n” is set by the program to be equal to the numerical value of the first member of the subset of items beginning with that letter
  • the initial value of “p” is set to the numerical value of the last member of the subset of items beginning with that letter.
  • FIG. 9 provides an example of the process of FIG. 8 , in which an alphabetically defined subset of the list is selected for searching.
  • FIG. 9 is a schematic illustration of still another option for selection of points for carrying out the method in accordance with another embodiment of the present invention, as described above with respect to FIG. 8 .
  • the user has input the alphabetical letter “G” following selection of the “SEARCH” function.
  • the initial value of “n” is 46 , corresponding to the first contact (or item) on the list beginning with the letter “G”, shown as entry “G- 1 ” in FIG.
  • the initial value of “p” is set to be equal to 66, which is the number associated with the last contact (or item) on the list beginning with the letter “G”, shown as entry G- 21 in FIG. 9 .
  • Subsequent iterations of the search will of course redefine or reset the values of “n” and “p” depending on the location of the sought target item with respect to the value of “D” determined by each such iteration of the process of FIG. 8 .
  • FIGS. 5 and 8 illustrated are logical operations to implement exemplary methods of locating target information in a list of information or items.
  • the exemplary method may be carried out by executing an embodiment of the search function 12 , for example, by use of the methods illustrated in FIGS. 4 and 7 .
  • the flow charts of FIGS. 4 and 7 may be thought of as depicting steps of two methods carried out by the mobile telephone 10 .
  • FIGS. 4 and 7 show a specific order of executing functional logic blocks, the order of executing the blocks may be changed relative to the order shown. Also, two or more blocks shown in succession may be executed concurrently or with partial concurrence. Certain blocks also may be omitted.
  • any number of functions, logical operations, commands, state variables, semaphores or messages may be added to the logical flow for purposes of enhanced utility, accounting, performance, measurement, troubleshooting, and the like. It is understood that all such variations are within the scope of the present invention.
  • FIG. 10 is an overall flow chart representing an exemplary embodiment of a method of locating a target item in a list in accordance with the present invention.
  • the overall process shown in FIG. 10 is a somewhat generalized depiction of the flow charts of FIGS. 5 and 8 .
  • the search is initiated.
  • the search may be initiated via a standard key programmed to function as a search initiation key or by a dedicated search function key or the like (e.g., pressing either a pre-programmed or a dedicated key on the electronic device, etc.).
  • n and p respective beginning and ending items on the contact list, referred to as “n” and “p” are set.
  • the values of “n” and “p” may be defined initially either by the user or by software based on the entire list or on some subset of the list, such as by user input of a numerical value or an alphabetical letter.
  • the user may identify a sub-range by selecting specific beginning and ending items on the list, such as by selecting the first alphabetical letter of a name associated with the target item.
  • the user observes the display to determine if the target item is shown on the display, is located prior to (e.g., higher on the list) the location “D”, or is located after (e.g., lower on the list) the location “D”.
  • the user next presses one of a key (e.g., “SELECT”) indicating the target item has been found, or a key indicating that the target item is “up” or “down” on the list relative to the first stop position (e.g., the “UP” or “DOWN” key, respectively), depending on the location of the target item in relation to the item(s) shown on the display.
  • a key e.g., “SELECT”
  • the user presses the key indicating the target item has been found and the list then may be opened to display the full information for the target item, and the user may select further options, such as “call”, “modify”, “play”, etc., for the displayed target item, as appropriate.
  • step S 960 upon selection of the “UP” key, the software redefines the “p” value as the current “D” value, a new “D” is calculated, and the process moves the display to a new “D” position halfway from the original “n” position to the newly defined “p” position.
  • the user again observes the display, to determine if the target item is shown on the display, is located prior to, or higher on the list, or is located after, or lower on the list, and once again next presses one of a “SELECT” key, the “UP” key, or the “DOWN” key, depending on the location of the target item in relation to the display.
  • step S 970 upon selection of the “DOWN” key, the software redefines the “n” value as the current “D” value, a new “D” is calculated, and the process moves the display to a new “D” position halfway from the newly defined “n” position to the original “p” position.
  • the user again observes the readout on the screen, to determine if the target item is displayed on the screen, is located prior to, or higher on the list, or is located after, or lower on the list, and once again next presses one of the “SELECT” key, the “UP” key, or the “DOWN” key, depending on the location of the target item in relation to the display.
  • This process continues until the target item is successfully located.
  • This process may be conveniently referred to as “navigation by halves”, since the process repeatedly divides the target list in half, then moves in the appropriate direction of the target item, relative to the halfway stopping point, until the target item is located.
  • the electronic device may include one or more “soft” keys in addition to or in place of the “hard keys”.
  • soft keys may be formed, for example, by software and displayed on a touch-sensitive screen, or by software and displayed on a screen including a pointing device, e.g., a cursor, which can be used to activate the keys from a location such as the multi-function navigation and selection key 48 or one or more buttons located remotely, such as on a headset or a headset cable-mounted control device.
  • a touchpad and selection button such as commonly used on laptop computers, may be used to navigate and select options in accordance with the invention. Many such devices are known in the art and the present invention is not limited to a specific, exemplary keypad described herein. Any suitable known means for navigating between and selecting alternatives may by used for this function.

Abstract

Process for locating target item in a list including a plurality of items in sequence from 1 to m, including: (a) defining a range within the list including the target item, including: i) identifying a first item at location “n”, where 1≦n≦m; ii) identifying a last item at location “p” where n≦p≦m; (b) identifying and displaying an item at location D=((p−n)/2+n); (c) determining location of target relative to “D”. If the target is at or adjacent “D”, terminate the process and display the target item; if the target is between “n” and “D”, resetting “p” to “D”, repeat steps (b) and (c); if the target item is between “D” and “p”, resetting “n” to “D”, repeat steps (b) and (c); until the target item is at or adjacent the location “D”.

Description

    TECHNICAL FIELD OF THE INVENTION
  • The present invention relates generally to electronic devices, such as electronic devices for engaging in voice communications. More particularly, the invention relates to a device and method for locating a target item, such as information relating to a specific contact, in a list containing a plurality of such items, such as a contact list, where the list is stored electronically in an electronic device.
  • DESCRIPTION OF THE RELATED ART
  • Mobile and/or electronic devices are becoming increasingly popular. For example, mobile telephones and portable media players are now in wide-spread use. In addition, the features associated with certain types of electronic devices have become increasingly diverse. To name a few examples, many electronic devices include cameras, text messaging capability, Internet browsing functionality, electronic mail capability, video playback capability, audio playback capability, image display capability, navigation capability, and hands-free headset interfaces.
  • Conventional electronic devices often include a contact list for storing contact information, such as phone numbers, email addresses, pictures, etc., of individuals known by a user of the device. As electronic device usage becomes more frequent and central to the user's communications to others, and as the storage capabilities of electronic devices increase dramatically, the contact list may become quite lengthy, including hundreds or even thousands of contacts in any given contact list. Similarly, conventional media players may include hundreds or even thousands of items such as songs in any given list.
  • Conventional electronic devices often include a relatively small display area, for example, from 3-5 cm. on a side. The resulting “tunnel vision” significantly limits the number of items viewable on the display at any one time to a small fraction of the total number of items that may be stored in the memory of the electronic device.
  • These facts combine to create a significant drawback to the use of conventional lists such as contact or song lists in conventional electronic devices, since it can be tedious and cumbersome to scroll through the entire list one by one or page by page until the sought target item is located. While alphabetical search capabilities may be available, when a list is quite lengthy, searching in this manner can also be tedious.
  • SUMMARY
  • As is evident, the simple task of locating specific items of information from an electronic device's list of items can be a tedious and time consuming task.
  • The present invention provides a method and apparatus for easily and efficiently locating an individual item from a large number of items stored in a list of a portable electronic device. The method provides the capability of moving through the list to the target item in a very efficient manner, by use of a logical series of “jumps” down and/or up the list, as needed.
  • According to a first aspect, the invention relates to a process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, comprising:
  • (a) defining a range within the list of items in which to locate the target item, comprising:
      • i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
      • ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
  • (b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+ n);
  • (c) determining a location of the target item relative to the location “D”, wherein
  • if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
  • if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
  • if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
  • repeating steps (b) and (c) until the target item is located.
  • According to another aspect, the present invention relates to a portable electronic device comprising a display, memory and processor programmed to carry out a process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, the process comprising:
  • (a) defining a range within the list of items in which to locate the target item, comprising:
      • i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
      • ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
  • (b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+ n);
  • (c) determining a location of the target item relative to the location “D”, wherein
  • if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
  • if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
  • if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
  • repeating steps (b) and (c) until the target item is located.
  • In one embodiment, the range comprises all items on the list.
  • In one embodiment, the range comprises a subset of all items on the list.
  • In one embodiment, at least one of the first item representing the first end of the range and the last item representing the second end of the range is identified by default values.
  • In one embodiment, at least one of the first item representing the first end of the range and the last item representing second end of the range is identified by user input.
  • In one embodiment, determining a location of the target item relative to the location “D” is based on user input.
  • In one embodiment, the device is programmed to employ standard keys for the user input.
  • In one embodiment, the device is programmed to employ standard keys for the user input.
  • In one embodiment, the list is stored in the memory.
  • In one embodiment, the program comprises logic obtained from logic circuitry, software, firmware or a combination of any two or more thereof.
  • According to a further aspect, the present invention relates to a method of locating a target item in a list of items in a portable electronic device, including:
  • providing a portable electronic device comprising a display, a memory and a processor programmed to carry out the process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, the process comprising:
  • (a) defining a range within the list of items in which to locate the target item, comprising:
      • i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
      • ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
  • (b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+ n);
  • (c) determining a location of the target item relative to the location “D”, wherein
  • if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
  • if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
  • if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
  • repeating steps (b) and (c) until the target item is located.
  • These and further features will be apparent with reference to the following description and attached drawings. In the description and drawings, particular embodiments of the invention have been disclosed in detail as being indicative of some of the ways in which the principles of the invention may be employed, but it is understood that the invention is not limited correspondingly in scope. Rather, the invention includes all changes, modifications and equivalents coming within the scope of the claims appended hereto.
  • Features that are described and/or illustrated with respect to one embodiment may be used in the same way or in a similar way in one or more other embodiments and/or in combination with or instead of the features of the other embodiments.
  • It should be emphasized that the terms “comprises” and “comprising,” when used in this specification, are taken to specify the presence of stated features, integers, steps or components but do not preclude the presence or addition of one or more other features, integers, steps, components or groups thereof.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a schematic view of a mobile telephone as an exemplary electronic device that includes programming for locating a target item in accordance with the present invention;
  • FIG. 2 is a block diagram illustrating items listed in the display of a mobile telephone during an exemplary search for a specific target item, in accordance with an embodiment of the invention;
  • FIG. 3 is a schematic block diagram of the mobile telephone of FIG. 1;
  • FIG. 4 is a schematic diagram of a communications system in which the mobile telephone of FIG. 1 may operate;
  • FIG. 5 is a flow chart representing an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1;
  • FIG. 6 is a schematic illustration of selection of points for carrying out the method in accordance with an embodiment of the present invention, as described above with respect to FIG. 5;
  • FIG. 7 is a schematic illustration of another embodiment of the selection of points for carrying out the method in accordance with an embodiment of the present invention, as described above with respect to FIG. 5;
  • FIG. 8 is a flow chart representing another embodiment of an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1;
  • FIG. 9 is a schematic illustration of still another embodiment of the selection of points for carrying out the method in accordance with another embodiment of the present invention, as described above with respect to FIG. 8; and
  • FIG. 10 is an overall flow chart representing an embodiment of an exemplary method of locating a target item in accordance with the present invention.
  • DETAILED DESCRIPTION OF EMBODIMENTS
  • Embodiments will now be described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. It will be understood that the figures are not necessarily to scale.
  • The interchangeable terms “electronic equipment” and “electronic device” include portable radio communication equipment. The term “portable radio communication equipment,” which hereinafter is referred to as a “mobile radio terminal,” includes all equipment such as mobile telephones, pagers, communicators, electronic organizers, personal digital assistants (PDAs), smartphones, portable communication apparatus or the like.
  • In the present disclosure, embodiments are described primarily in the context of a mobile telephone. It will be appreciated, however, that the exemplary context of a mobile telephone is not the only context and the context may relate to any type of appropriate electronic equipment, examples of which include a media player, a gaming device and a computer. In addition, it should be understood that, while the present invention is described with respect to a device having physically activatable keys for selection of items in accordance with the invention, the present invention is equally applicable to devices in which virtual keys or other selectable elements are provided, such as on a touchscreen or other such display/keyboard or display/selectable item combination. In such an embodiment, the appropriate functions for carrying out the present invention would be applied to the touchscreen or other virtual keys or selectable elements in ways corresponding to those described herein, as will be readily understood by the skilled artisan.
  • Referring initially to FIGS. 1 and 3, an electronic device is shown. The electronic device 10 includes a search function 12 that is configured to locate a specific target item of information in a list or lists contained within the electronic device. Additional details and operation of the search function 12 will be described in greater detail below. The search function 12 may be embodied as executable code that is resident in and executed by the electronic device 10. In one embodiment, the search function 12 may be a program stored on a or machine readable medium such as non-volatile memory or the like. The search function 12 may be a stand-alone software application or form a part of a software application that carries out additional tasks related to the electronic device 10.
  • The electronic device of the illustrated embodiment is a mobile telephone and will be referred to as the mobile telephone 10. The mobile telephone 10 is shown as having a “brick” or “block” form factor housing, but it will be appreciated that other housing types may be utilized, such as a “flip-open” form factor (e.g., a “clamshell” housing) or a slide-type form factor (e.g., a “slider” housing).
  • The mobile telephone 10 includes a display 14. The display 14 displays information to a user such as operating state, time, telephone numbers, contact information, various navigational menus, etc., that enable the user to utilize the various features of the mobile telephone 10. The display 14 also may be used to visually display content received by the mobile telephone 10 and/or retrieved from a memory 16 (FIG. 3) of the mobile telephone 10. The display 14 may be used to present images, video and other graphics to the user, such as photographs, mobile television content and video associated with games.
  • A keypad 18 provides for a variety of user input operations. For example, the keypad 18 may include alphanumeric keys for allowing entry of alphanumeric information such as telephone numbers, phone lists, contact information, notes, text, etc. In addition, the keypad 18 may include special function keys such as a “call send” key for initiating or answering a call, and a “call end” key for ending or “hanging up” a call. Special function keys also may include menu navigation and select keys to facilitate navigating through a menu displayed on the display 14. For instance, a pointing device and/or navigation keys may be present to accept directional inputs from a user. Special function keys may include audiovisual content playback keys to start, stop and pause playback, skip or repeat tracks, and so forth. Other keys associated with the mobile telephone may include a volume key, an audio mute key, an on/off power key, a web browser launch key, a camera key, etc. Keys or key-like functionality also may be embodied as a touch screen associated with the display 14. Also, the display 14 and keypad 18 may be used in conjunction with one another to implement soft key functionality.
  • Included in the keypad 18 is a multi-function navigation and selection key 48. The key 48 may be used in the present invention, for example, for functions to be described below, such as SELECT, ARROW UP, and ARROW DOWN, as well as for standard navigation actions. When the search function is not activated, the key 48 can be used for scrolling up, down or sideways, and the “select” button may be used as in known in the art.
  • In accordance with one embodiment of the present invention, the SEARCH function may be activated from a menu displayed on the display 14. When the SEARCH function has been activated, the multi-function navigation and selection key 48 may be configured such that the “select” button functions as SELECT, the up arrow functions as ARROW UP, the down arrow functions as ARROW DOWN, and the left/right arrows function to begin or end the search process, or to take other actions. These or other keys or touchpad items may be programmed to function as “soft” buttons for these or other uses, as will be understood by the skilled artisan.
  • FIG. 2 is a block diagram illustrating items listed in the display of a mobile telephone during an exemplary search for a specific target item, in accordance with an embodiment of the invention. In the example shown in FIG. 2, the user is searching for a specific target item, a contact by the name of “Carol Catwoman” on a list of contacts beginning with Sam Abe (shown as “Abe, Sam”) and ending at the other end of the alphabet. When the search is initiated, in accordance with the present invention and as described in more detail below, the method causes the display “D” to move to display an item located halfway from the beginning of the list to the end of the list which, in this example, is “Mercer, Helen”, as shown (underlined) in FIG. 2. Since the target item, “Catwoman, Carol”, is located above, or closer to the beginning of the list than “Mercer, Helen” the user presses the “ARROW UP” key. This action results in determination of a new, second, “D” which is halfway between the first “D” (“Mercer, Helen”) and the beginning of the list. In this example, the item displayed at the second “D” is “Ganaard, Smiley”, as shown in FIG. 2. Since the target item, “Catwoman, Carol”, is located above, or closer to the beginning of the list than “Ganaard, Smiley” the user again presses the “ARROW UP” key. This action results in determination of a new, third, “D” which is halfway between the second “D” (“Ganaard, Smiley”) and the beginning of the list. In this example, the item displayed at the third “D” is “Callas, Bruce”, as shown in FIG. 2. At this point, the user could continue the search, this time by pressing the “ARROW DOWN” key, to determine, move to and display a fourth “D”. However, as shown in FIG. 2, the desired target item, “Catwoman, Carol”, is visible in the display. Thus, the desired target item, “Catwoman, Carol” is considered to be adjacent to the currently displayed “D”. In this case, the user may press an appropriate key to end the search, and simply “SCROLL DOWN” two steps to the desired target item, “Catwoman, Carol”. The user may then “SELECT” desired target item, “Catwoman, Carol”, at which point, in this example, the contact information for Carol Catwoman is displayed. For other types of list, other actions may be taken upon activating a “SELECT” function, such as displaying information about the song or movie, etc., that is the target item. In one embodiment, the device and method may include an option for contacting the contact by telephone or email directly, or playing the song or movie directly, rather than displaying the contact, song, movie or other information. FIG. 2 simply illustrates an example of how the present invention may be applied in a particular context to assist in understanding the present invention, but should not be considered as limiting the scope of the invention, which is limited only by the scope of the appended claims.
  • The mobile telephone 10 includes call circuitry that enables the mobile telephone 10 to establish a call and/or exchange signals with a called/calling device, which typically may be another mobile telephone or landline telephone. However, the called/calling device need not be another telephone, but may be some other device such as an Internet web server, content providing server, etc. Calls may take any suitable form. For example, the call could be a conventional call that is established over a cellular circuit-switched network or a voice over Internet Protocol (VoIP) call that is established over a packet-switched capability of a cellular network or over an alternative packet-switched network, such as WiFi (e.g., a network based on the IEEE 802.11 standard), WiMax (e.g., a network based on the IEEE 802.16 standard), etc. Another example includes a video enabled call that is established over a cellular or alternative network.
  • The mobile telephone 10 may be configured to transmit, receive and/or process data, such as text messages, instant messages, electronic mail messages, multimedia messages, image files, video files, audio files, ring tones, streaming audio, streaming video, data feeds (including podcasts and really simple syndication (RSS) data feeds), and so forth. It is noted that a text message is commonly referred to by some as “an SMS,” which stands for simple message service. SMS is a typical standard for exchanging text messages. Similarly, a multimedia message is commonly referred to by some as “an MMS,” which stands for multimedia message service. MMS is a typical standard for exchanging multimedia messages. Processing data may include storing the data in the memory 16, executing applications to allow user interaction with the data, displaying video and/or image content associated with the data, outputting audio sounds associated with the data, and so forth.
  • FIG. 3 represents a functional block diagram of the mobile telephone 10. For the sake of brevity, many features of the mobile telephone 10 will not be described in great detail. The mobile telephone 10 includes a primary control circuit 20 that is configured to carry out overall control of the functions and operations of the mobile telephone 10. The control circuit 20 may include a processing device 22, such as a central processing unit (CPU), microcontroller or microprocessor. The processing device 22 executes code stored in a memory (not shown) within the control circuit 20 and/or in a separate memory, such as the memory 16, in order to carry out operation of the mobile telephone 10. Among other tasks, the control circuit 20 may carry out timing functions, such as timing the durations of calls, generating the content of time and date stamps, and so forth. The memory 16 may be, for example, one or more of a buffer, a flash memory, a hard drive, a removable media, a volatile memory, a non-volatile memory, a random access memory (RAM), or other suitable device. In a typical arrangement, the memory 16 may include a non-volatile memory (e.g., a NAND or NOR architecture flash memory) for long term data storage and a volatile memory that functions as system memory for the control circuit 20. The volatile memory may be a RAM implemented with synchronous dynamic random access memory (SDRAM). The memory 16 may exchange data with the control circuit 20 over a data bus. Accompanying control lines and an address bus between the memory 16 and the control circuit 20 also may be present.
  • In addition, the processing device 22 may execute code that implements the search function 12. It will be apparent to a person having ordinary skill in the art of computer programming, and specifically in application programming for mobile telephones or other electronic devices, how to program a mobile telephone 10 to operate and carry out logical functions associated with the search function 12. Accordingly, details as to specific programming code have been left out for the sake of brevity. Also, while the search function 12 is executed by the processing device 22 in accordance with an embodiment, such functionality could also be carried out via dedicated hardware or firmware, or some combination of hardware, firmware and/or software.
  • Continuing to refer to FIGS. 1 and 2, the mobile telephone 10 includes an antenna 24 coupled to a radio circuit 26. The radio circuit 26 includes a radio frequency transmitter and receiver for transmitting and receiving signals via the antenna 24. The radio circuit 26 may be configured to operate in a mobile communications system and may be used to send and receive data and/or audiovisual content. Receiver types for interaction with a mobile radio network and/or broadcasting network include, but are not limited to, global system for mobile communications (GSM), code division multiple access (CDMA), wideband CDMA (WCDMA), general packet radio service (GPRS), WiFi, WiMax, digital video broadcasting-handheld (DVB-H), integrated services digital broadcasting (ISDB), etc., as well as advanced versions of these standards.
  • The mobile telephone 10 further includes a sound signal processing circuit 28 for processing audio signals transmitted by and received from the radio circuit 26. Coupled to the sound processing circuit 28 are a speaker 30 and a microphone 32 that enable a user to listen and speak via the mobile telephone 10 as is conventional. The radio circuit 26 and sound processing circuit 28 are each coupled to the control circuit 20 so as to carry out overall operation. Audio data may be passed from the control circuit 20 to the sound signal processing circuit 28 for playback to the user. The audio data may include, for example, audio data from an audio file stored by the memory 16 and retrieved by the control circuit 20, or received audio data such as in the form of streaming audio data from a mobile radio service. The sound processing circuit 28 may include any appropriate buffers, decoders, amplifiers and so forth.
  • The display 14 may be coupled to the control circuit 20 by a video processing circuit 34 that converts video data to a video signal used to drive the display 14. The video processing circuit 34 may include any appropriate buffers, decoders, video data processors and so forth. The video data may be generated by the control circuit 20, retrieved from a video file that is stored in the memory 16, derived from an incoming video data stream that is received by the radio circuit 28 or obtained by any other suitable method.
  • The mobile telephone 10 may further include one or more I/O interface(s) 36. The I/O interface(s) 36 may be in the form of typical mobile telephone I/O interfaces and may include one or more electrical connectors. As is typical, the I/O interface(s) 36 may be used to couple the mobile telephone 10 to a battery charger to charge a battery of a power supply unit (PSU) 38 within the mobile telephone 10. In addition, or in the alternative, the I/O interface(s) 36 may serve to connect the mobile telephone 10 to a headset assembly (e.g., a personal handsfree (PHF) device) that has a wired interface with the mobile telephone 10. Further, the I/O interface(s) 36 may serve to connect the mobile telephone 10 to a personal computer or other device via a data cable for the exchange of data. The mobile telephone 10 may receive operating power via the I/O interface(s) 36 when connected to a vehicle power adapter or an electricity outlet power adapter. The PSU 38 may supply power to operate the mobile telephone 10 in the absence of an external power source. The mobile telephone 10 also may include a system clock 40 for clocking the various components of the mobile telephone 10, such as the control circuit 20 and the memory 16.
  • The mobile telephone 10 may include a camera 42 for taking digital pictures and/or movies. Image and/or video files corresponding to the pictures and/or movies may be stored in the memory 16.
  • The mobile telephone 10 also may include a position data receiver 44, such as a global positioning system (GPS) receiver, Galileo satellite system receiver or the like. The position data receiver 44 may be involved in determining the location of the mobile telephone 10.
  • The mobile telephone 10 also may include a local wireless interface 46, such as an infrared transceiver and/or an RF interface (e.g., a Bluetooth interface), for establishing communication with an accessory, another mobile radio terminal, a computer or another device. For example, the local wireless interface 46 may operatively couple the mobile telephone 10 to a headset assembly (e.g., a PHF device) in an embodiment where the headset assembly has a corresponding wireless interface.
  • With additional reference to FIG. 4, the mobile telephone 10 may be configured to operate as part of a communications system 48. The system 48 may include a communications network 50 having a server 52 (or servers) for managing calls placed by and destined to the mobile telephone 10, transmitting data to the mobile telephone 10 and carrying out any other support functions. The server 52 communicates with the mobile telephone 10 via a transmission medium. The transmission medium may be any appropriate device or assembly, including, for example, a communications tower (e.g., a cell tower), another mobile telephone, a wireless access point, a satellite, etc. Portions of the network may include wireless transmission pathways. The network 50 may support the communications activity of multiple mobile telephones 10 and other types of end user devices.
  • As noted, electronic devices such as the mobile telephone 10 usually include a list of contacts. With increases in use, the list of contacts may become extensive, making difficult the locating of any particular item on the list. In other portable electronic devices, such as MP3 players, many of which are capable of storing hundreds or thousand of songs in gigabyte quantities, the extensive list similarly makes difficult the location of a particular song. The present invention provides a method to greatly simplify locating such items on a list in an electronic device. An example has been described above with respect to FIG. 2. The process described with respect to FIG. 2 may be adapted to conduct any search within the scope of the present invention, in accordance with the more general principles set forth in the following.
  • Thus, in one embodiment, the invention relates to a process for locating a target item within a list including a plurality of m items in numerical sequence from 0 to m, including:
  • (a) defining a range within the list of items in which to locate the target item, comprising:
      • i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
      • ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
  • (b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+ n);
  • (c) determining a location of the target item relative to the location “D”, wherein
  • if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
  • if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
  • if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
  • repeating steps (b) and (c) until the target item is located.
  • As used herein, when referring to the position of a target item, the term “adjacent” means that the target item is displayed on a display screen of the electronic device, and may be immediately next to an item designated by “D”, or may be removed one or more items, as long as it is visible to the user on the display screen.
  • FIG. 5 is a flow chart representing an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1. As shown in FIG. 5, the method starts when a user presses a search key on a keypad to initiate a search, in step S10. The key may be a dedicated “search” function key or, more often, will be an activation key used to select a “search” function from a list of possible functions. Initiating the search may include, for example, display of a query to the user whether the search should begin at a designated location on the list or if, e.g., by default, the search should begin with the first item on the list. Similarly, a query may be displayed to the user whether the search should end at a designated location on the list or if, e.g., by default, the search should end with the last item on the list. In one alternative, the user may designate and/or be queried to designate an alphabetical letter, e.g., letter “G”, in which the target item is expected to be located.
  • Next, in step S20A, the program queries whether the user has input a numerical value for “n”. If yes, the value that was input is assigned to “n”. If no, then the program sets “n”=0 (zero). Next, in step S30, the program queries whether the user has input a numerical value for “p”. If yes, the value that was input is assigned to “p”. If no, then the program sets “p” equal to the numerical value of m, the final item number on the list. Thus, if the user does not input numerical values for “n” and “p”, when the search begins, the list to be searched includes all of the items on the list, i.e., numbered from 0 to m.
  • Referring still to FIG. 5, when the values of “n” and “p” have thus been determined, in step S40, using the equation D=((p−n)/2)+n, an initial location “D” is identified. The method causes the electronic device display to show the item stored at location “D”. The user can then see the item stored at location “D” and determine whether this is the target item. If the item at location “D” is the target item, then the user can press a “SELECT” key or activate a “SELECT” option, in step S50. As shown in FIG. 5, in step S50, if the “SELECT” option is YES, then since the item stored at location “D” is the target item, the process terminates and the target item is displayed.
  • Depending on the capability of the display, items on the list adjacent to the item stored a location “D” may also be displayed. In one embodiment, at least immediately adjacent items are shown, for convenience, to avoid the necessity of conducting another search cycle when the target item is within one or two items of the item at the location “D”. If the item at the location “D” is not the target item, then the user presses another key on the keypad, such as an “UP” arrow key, to indicate the target item is between “n” and “D”, or a “DOWN” arrow key, to indicate the target item is between “D” and “p”. Either the “UP” or “DOWN” arrow key must be pressed, if the “SELECT” key is not pressed. As shown in FIG. 5, if in step S60 the “UP” arrow key is pressed, then the value of “p” is reset to the value of “D” used in the immediately preceding iteration, and the process returns to step S40 in which a new value of “D” is calculated, retaining the original value of “n”. If in step S70, the “DOWN” arrow is pressed, then the value of “n” is reset to the value of “D” used in the immediately preceding iteration, and the process returns to step S40 in which a new value of “D” is calculated, retaining the original value of “p”. This process continues, repeating the steps of resetting the value of “p” or “n”, identifying and displaying a value of “D”, and determining if the target item is at the location “D”, until the target item is located.
  • As noted, the target item may be located when it is at or adjacent to the location “D” as determined in step S40. In one embodiment, when the target item is adjacent to the location “D”, that is, when the target item is not exactly at the location “D” but is within the relatively narrow field of view of the display and therefore visible to the user, the user may scroll to or otherwise select the target item and proceed as if the target item had been directly located by the process. This option is sometimes referred to herein as when the target item is “adjacent” to the location “D”, as opposed to being exactly “at” the location D. In exercising this option, the user may terminate the search process by selecting an “end” function key, for example, then using the arrow keys to scroll up or down to the “adjacent” target item visible in the display, and then selecting the target item for detailed display, direct contact, or playing a song, for example. An example of locating and selecting a target item adjacent to the location “D” in a contact list of names has been described above in the example shown in FIG. 2.
  • FIGS. 6 and 7 provide examples of the process of FIG. 5, in which either the entire list is searched or a numerically defined subset of the list is selected for searching. FIG. 6 is a schematic illustration of selection of points for carrying out the method in accordance with an embodiment of the present invention, as described above with respect to FIG. 5. In FIG. 6, the initial value of “n” is zero, corresponding to the first contact on the list, and the initial value of “p” is set to be equal to the value “m”, which is the number associated with the last or final item on the list. In this example, in the first iteration of the process, the value of “D” is halfway between “n”=0 and “p”=m. Subsequent iterations of the search will of course redefine or reset the values of “n” and “p” depending on the location of the sought target item with respect to the value of “D” determined by each such iteration of the process of FIG. 5.
  • FIG. 7 is a schematic illustration of another option for selection of points for carrying out the method in accordance with another embodiment of the present invention, as described above with respect to FIG. 5. In FIG. 7, the initial value of “n” is two (2), corresponding to the third contact (or item) on the list, and the initial value of “p” is set to be equal to 46, which is the number associated with the forty-sixth contact (or item) on the list. In this example, in the first iteration of the process, the value of “D” is halfway between “n”=2 and “p”=46, so that D=24. Subsequent iterations of the search will of course redefine or reset the values of “n” or “p” as appropriate depending on the location of the sought target item with respect to the value of “D” determined by each such iteration of the process of FIG. 5.
  • FIG. 8 is a flow chart representing another embodiment of an exemplary method of locating a target item in accordance with the present invention using an electronic device such as the mobile telephone of FIG. 1. The flow chart in FIG. 8 is similar to that in FIG. 5, except that in step S20B, an alphabetical letter is entered instead of the numerical value of “n” being entered as shown in step S20A. As shown in FIG. 8, if no alphabetical letter is entered, the process defaults to step S20A of the flow chart shown in FIG. 5, and the process continues as described above with respect to FIG. 5.
  • If, as shown in FIG. 8, an alphabetical letter is entered at step S20B, then according to one embodiment of the present invention, the initial value of “n” is set by the program to be equal to the numerical value of the first member of the subset of items beginning with that letter, and the initial value of “p” is set to the numerical value of the last member of the subset of items beginning with that letter. As shown in FIG. 8, when the initial values of “n” and “p” have been determined, the process moves to step S40 and the following steps as shown in FIG. 5, which are identical in the embodiment of FIG. 8 to the steps S40-S70 shown in FIG. 5.
  • FIG. 9 provides an example of the process of FIG. 8, in which an alphabetically defined subset of the list is selected for searching. FIG. 9 is a schematic illustration of still another option for selection of points for carrying out the method in accordance with another embodiment of the present invention, as described above with respect to FIG. 8. In FIG. 9, the user has input the alphabetical letter “G” following selection of the “SEARCH” function. By selecting the alphabetical letter “G”, in the exemplary embodiment of FIG. 9, the initial value of “n” is 46, corresponding to the first contact (or item) on the list beginning with the letter “G”, shown as entry “G-1” in FIG. 9, and the initial value of “p” is set to be equal to 66, which is the number associated with the last contact (or item) on the list beginning with the letter “G”, shown as entry G-21 in FIG. 9. In this example, in the first iteration of the process, the value of “D” is halfway between “n”=46 and “p”=66, i.e., D=56, corresponding to the entry G-11. Subsequent iterations of the search will of course redefine or reset the values of “n” and “p” depending on the location of the sought target item with respect to the value of “D” determined by each such iteration of the process of FIG. 8.
  • With additional reference to FIGS. 5 and 8, illustrated are logical operations to implement exemplary methods of locating target information in a list of information or items. The exemplary method may be carried out by executing an embodiment of the search function 12, for example, by use of the methods illustrated in FIGS. 4 and 7. Thus, the flow charts of FIGS. 4 and 7 may be thought of as depicting steps of two methods carried out by the mobile telephone 10. Although FIGS. 4 and 7 show a specific order of executing functional logic blocks, the order of executing the blocks may be changed relative to the order shown. Also, two or more blocks shown in succession may be executed concurrently or with partial concurrence. Certain blocks also may be omitted. In addition, any number of functions, logical operations, commands, state variables, semaphores or messages may be added to the logical flow for purposes of enhanced utility, accounting, performance, measurement, troubleshooting, and the like. It is understood that all such variations are within the scope of the present invention.
  • FIG. 10 is an overall flow chart representing an exemplary embodiment of a method of locating a target item in a list in accordance with the present invention. The overall process shown in FIG. 10 is a somewhat generalized depiction of the flow charts of FIGS. 5 and 8. As shown in FIG. 10, to start the process, at step S910 the search is initiated. In step S910, the search may be initiated via a standard key programmed to function as a search initiation key or by a dedicated search function key or the like (e.g., pressing either a pre-programmed or a dedicated key on the electronic device, etc.). As shown in steps S920 and S930, respective beginning and ending items on the contact list, referred to as “n” and “p” are set. As in the above-described embodiments, the values of “n” and “p” may be defined initially either by the user or by software based on the entire list or on some subset of the list, such as by user input of a numerical value or an alphabetical letter. Thus, the user may identify a sub-range by selecting specific beginning and ending items on the list, such as by selecting the first alphabetical letter of a name associated with the target item. In step S940 the process defines and moves to a first stop position “D”, located halfway from the beginning or first item on the list or sub-range to the ending or last item on the list, as defined by the equation D=((p−n)/2)+n, where “n” and “p” are the values assigned according to the range or subset defined by the user or by the software. When the item at the location “D” is displayed (possibly together with adjacent items), the user observes the display to determine if the target item is shown on the display, is located prior to (e.g., higher on the list) the location “D”, or is located after (e.g., lower on the list) the location “D”. Based on this information, the user next presses one of a key (e.g., “SELECT”) indicating the target item has been found, or a key indicating that the target item is “up” or “down” on the list relative to the first stop position (e.g., the “UP” or “DOWN” key, respectively), depending on the location of the target item in relation to the item(s) shown on the display. If the target item is displayed, the user presses the key indicating the target item has been found, and the list then may be opened to display the full information for the target item, and the user may select further options, such as “call”, “modify”, “play”, etc., for the displayed target item, as appropriate.
  • As shown for step S960, upon selection of the “UP” key, the software redefines the “p” value as the current “D” value, a new “D” is calculated, and the process moves the display to a new “D” position halfway from the original “n” position to the newly defined “p” position. At this point, the user again observes the display, to determine if the target item is shown on the display, is located prior to, or higher on the list, or is located after, or lower on the list, and once again next presses one of a “SELECT” key, the “UP” key, or the “DOWN” key, depending on the location of the target item in relation to the display.
  • As shown for step S970, upon selection of the “DOWN” key, the software redefines the “n” value as the current “D” value, a new “D” is calculated, and the process moves the display to a new “D” position halfway from the newly defined “n” position to the original “p” position. At this point in the process, the user again observes the readout on the screen, to determine if the target item is displayed on the screen, is located prior to, or higher on the list, or is located after, or lower on the list, and once again next presses one of the “SELECT” key, the “UP” key, or the “DOWN” key, depending on the location of the target item in relation to the display.
  • This process continues until the target item is successfully located. This process may be conveniently referred to as “navigation by halves”, since the process repeatedly divides the target list in half, then moves in the appropriate direction of the target item, relative to the halfway stopping point, until the target item is located.
  • Although the electronic device has been described generally in terms of a keypad made up of “hard” keys, in other embodiments, the electronic device may include one or more “soft” keys in addition to or in place of the “hard keys”. As is well known, such soft keys may be formed, for example, by software and displayed on a touch-sensitive screen, or by software and displayed on a screen including a pointing device, e.g., a cursor, which can be used to activate the keys from a location such as the multi-function navigation and selection key 48 or one or more buttons located remotely, such as on a headset or a headset cable-mounted control device. In another embodiment, a touchpad and selection button, such as commonly used on laptop computers, may be used to navigate and select options in accordance with the invention. Many such devices are known in the art and the present invention is not limited to a specific, exemplary keypad described herein. Any suitable known means for navigating between and selecting alternatives may by used for this function.
  • Although the invention has been shown and described with respect to a certain preferred embodiment or embodiments, it is obvious that equivalent alterations and modifications will occur to others skilled in the art upon the reading and understanding of this specification and the annexed drawings. In particular regard to the various functions performed by the above described elements (components, assemblies, devices, compositions, etc.), the terms (including a reference to a “means”) used to describe such elements are intended to correspond, unless otherwise indicated, to any element which performs the specified function of the described element (i.e., that is functionally equivalent), even though not structurally equivalent to the disclosed structure which performs the function in the herein illustrated exemplary embodiment or embodiments of the invention. In addition, while a particular feature of the invention may have been described above with respect to only one or more of several illustrated embodiments, such feature may be combined with one or more other features of the other embodiments, as may be desired and advantageous for any given or particular application.

Claims (20)

1. A process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, comprising:
(a) defining a range within the list of items in which to locate the target item, comprising:
i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
(b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+ n);
(c) determining a location of the target item relative to the location “D”, wherein if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
repeating steps (b) and (c) until the target item is located.
2. A process as in claim 1 wherein the range comprises all items on the list.
3. A process as in claim 1 wherein the range comprises a subset of all items on the list.
4. A process as in claim 1 wherein at least one of the first item representing the first end of the range and the last item representing the second end of the range is identified by default values.
5. A process as in claim 1 wherein at least one of the first item representing the first end of the range and the last item representing second end of the range is identified by user input.
6. A process as in claim 1 wherein determining a location of the target item relative to the location “D” is based on user input.
7. A portable electronic device comprising a display, memory and processor programmed to carry out a process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, the process comprising:
(a) defining a range within the list of items in which to locate the target item, comprising:
i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
(b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+n);
(c) determining a location of the target item relative to the location “D”, wherein
if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
repeating steps (b) and (c) until the target item is located.
8. A portable electronic device as in claim 7 wherein the range comprises all items on the list.
9. A portable electronic device as in claim 7 wherein the range comprises a subset of all items on the list.
10. A portable electronic device as in claim 7 wherein at least one of the first item representing the first end of the range and the last item representing the second end of the range is identified by default values.
11. A portable electronic device as in claim 7 wherein at least one of the first item representing the first end of the range and the last item representing second end of the range is identified by user input.
12. A portable electronic device as in claim 7 wherein determining a location of the target item relative to the location “D” is based on user input.
13. A portable electronic device as in claim 11 wherein the device is programmed to employ standard keys for the user input.
14. A portable electronic device as in claim 12 wherein the device is programmed to employ standard keys for the user input.
15. A portable electronic device as in claim 7 wherein the list is stored in the memory.
16. A portable electronic device as in claim 7 wherein the program comprises logic obtained from logic circuitry, software, firmware or a combination of any two or more thereof.
17. A method of locating a target item in a list of items in a portable electronic device, comprising:
providing a portable electronic device comprising a display, memory and processor programmed to carry out the process for locating a target item within a list including a plurality of m items locatable in numerical sequence from 0 to m, the process comprising:
(a) defining a range within the list of items in which to locate the target item, comprising:
i) identifying a first item at a location “n” representing a first end of the range, where 0≦n≦m;
ii) identifying a last item at a location “p” representing a second end of the range, where n≦p≦m;
(b) identifying and displaying an item at a location “D” within the range, wherein D=((p−n)/2+ n);
(c) determining a location of the target item relative to the location “D”, wherein
if the target item is at or adjacent the location “D”, terminating the process and displaying the target item;
if the target item is between “n” and the location “D”, resetting “p” to the value of “D” and repeating steps (b) and (c);
if the target item is between the location “D” and “p”, resetting “n” to the value of “D” and repeating steps (b) and (c); and
repeating steps (b) and (c) until the target item is at or adjacent the location “D”.
18. A process as in claim 17 wherein at least one of the first item representing the first end of the range and the last item representing second end of the range is identified by user input.
19. A program stored on a machine readable medium which, when executed by an electronic processor, executes the process of claim 17.
20. A program stored on a machine readable medium which, when executed by an electronic processor, executes the process of claim 1.
US11/773,455 2007-07-05 2007-07-05 Apparatus and method for locating a target item in a list Expired - Fee Related US7707205B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US11/773,455 US7707205B2 (en) 2007-07-05 2007-07-05 Apparatus and method for locating a target item in a list
PCT/IB2007/004125 WO2009004402A1 (en) 2007-07-05 2007-12-27 Apparatus and method for locating a target item in a list

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/773,455 US7707205B2 (en) 2007-07-05 2007-07-05 Apparatus and method for locating a target item in a list

Publications (2)

Publication Number Publication Date
US20090012952A1 true US20090012952A1 (en) 2009-01-08
US7707205B2 US7707205B2 (en) 2010-04-27

Family

ID=39427620

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/773,455 Expired - Fee Related US7707205B2 (en) 2007-07-05 2007-07-05 Apparatus and method for locating a target item in a list

Country Status (2)

Country Link
US (1) US7707205B2 (en)
WO (1) WO2009004402A1 (en)

Cited By (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090106696A1 (en) * 2001-09-06 2009-04-23 Matias Duarte Loop menu navigation apparatus and method
US20100087169A1 (en) * 2008-10-02 2010-04-08 Microsoft Corporation Threading together messages with multiple common participants
US20100107100A1 (en) * 2008-10-23 2010-04-29 Schneekloth Jason S Mobile Device Style Abstraction
US20100103124A1 (en) * 2008-10-23 2010-04-29 Kruzeniski Michael J Column Organization of Content
US20100105441A1 (en) * 2008-10-23 2010-04-29 Chad Aron Voss Display Size of Representations of Content
US20100159966A1 (en) * 2008-10-23 2010-06-24 Friedman Jonathan D Mobile Communications Device User Interface
US20100248689A1 (en) * 2009-03-30 2010-09-30 Teng Stephanie E Unlock Screen
US20100248688A1 (en) * 2009-03-30 2010-09-30 Teng Stephanie E Notifications
US20100295795A1 (en) * 2009-05-22 2010-11-25 Weerapan Wilairat Drop Target Gestures
US20100302172A1 (en) * 2009-05-27 2010-12-02 Microsoft Corporation Touch pull-in gesture
US20110047503A1 (en) * 2009-08-18 2011-02-24 International Business Machines Corporation File content navigation using binary search
US20110159917A1 (en) * 2009-12-30 2011-06-30 Glenn Carl Johnson Audible Key Locator System
US20110252362A1 (en) * 2010-04-13 2011-10-13 Lg Electronics Inc. Mobile terminal and method of controlling operation of the mobile terminal
US8175653B2 (en) 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US8560959B2 (en) 2010-12-23 2013-10-15 Microsoft Corporation Presenting an application change through a tile
US8687023B2 (en) 2011-08-02 2014-04-01 Microsoft Corporation Cross-slide gesture to select and rearrange
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US8830270B2 (en) 2011-09-10 2014-09-09 Microsoft Corporation Progressively indicating new content in an application-selectable user interface
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US8922575B2 (en) 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US8935631B2 (en) 2011-09-01 2015-01-13 Microsoft Corporation Arranging tiles
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US8983537B2 (en) 2009-12-30 2015-03-17 Glenn Johnson Object locator system and method
US8990733B2 (en) 2010-12-20 2015-03-24 Microsoft Technology Licensing, Llc Application-launching interface for multiple modes
US9052820B2 (en) 2011-05-27 2015-06-09 Microsoft Technology Licensing, Llc Multi-application environment
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9128605B2 (en) 2012-02-16 2015-09-08 Microsoft Technology Licensing, Llc Thumbnail-image selection of applications
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US9329774B2 (en) 2011-05-27 2016-05-03 Microsoft Technology Licensing, Llc Switching back to a previously-interacted-with application
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
US9430130B2 (en) 2010-12-20 2016-08-30 Microsoft Technology Licensing, Llc Customization of an immersive environment
US20160262241A1 (en) * 2015-02-02 2016-09-08 Orama Inc. Lighting Control Network Commissioning
US9450952B2 (en) 2013-05-29 2016-09-20 Microsoft Technology Licensing, Llc Live tiles without application-code execution
US9451822B2 (en) 2014-04-10 2016-09-27 Microsoft Technology Licensing, Llc Collapsible shell cover for computing device
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US9665384B2 (en) 2005-08-30 2017-05-30 Microsoft Technology Licensing, Llc Aggregation of computing device settings
US9674335B2 (en) 2014-10-30 2017-06-06 Microsoft Technology Licensing, Llc Multi-configuration input device
US9769293B2 (en) 2014-04-10 2017-09-19 Microsoft Technology Licensing, Llc Slider cover for computing device
US20170277347A1 (en) * 2014-09-03 2017-09-28 Zte Corporation Method and apparatus for switching key functions of touchscreen terminal
US9841874B2 (en) 2014-04-04 2017-12-12 Microsoft Technology Licensing, Llc Expandable application representation
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10353566B2 (en) 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2582745B (en) 2019-03-27 2021-09-29 Ardyne Holdings Ltd Improvements in or relating to well abandonment

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6239803B1 (en) * 1999-04-14 2001-05-29 Stanley W. Driskell Method to achieve least effort selection from an item list of arbitrary length
US20040012679A1 (en) * 2002-07-17 2004-01-22 Jian Fan Systems and methods for processing a digital captured image
US20040132467A1 (en) * 2002-08-06 2004-07-08 Richard Hull Retrieving media items to a mobile device
US20050192822A1 (en) * 2003-03-25 2005-09-01 Hartenstein Mark A. Systems and methods for managing affiliations

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10016177A1 (en) 2000-03-31 2001-10-04 Bosch Gmbh Robert Method for selecting data according to user choices, where the data is arranged according to a certain hierarchy, relates particularly to selecting destinations in an on-board vehicle navigation system with limited space
GB2372117A (en) 2001-02-09 2002-08-14 Int Computers Ltd Data lookup

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6239803B1 (en) * 1999-04-14 2001-05-29 Stanley W. Driskell Method to achieve least effort selection from an item list of arbitrary length
US20040012679A1 (en) * 2002-07-17 2004-01-22 Jian Fan Systems and methods for processing a digital captured image
US20040132467A1 (en) * 2002-08-06 2004-07-08 Richard Hull Retrieving media items to a mobile device
US20050192822A1 (en) * 2003-03-25 2005-09-01 Hartenstein Mark A. Systems and methods for managing affiliations

Cited By (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090106696A1 (en) * 2001-09-06 2009-04-23 Matias Duarte Loop menu navigation apparatus and method
US9665384B2 (en) 2005-08-30 2017-05-30 Microsoft Technology Licensing, Llc Aggregation of computing device settings
US20100087169A1 (en) * 2008-10-02 2010-04-08 Microsoft Corporation Threading together messages with multiple common participants
US9223412B2 (en) 2008-10-23 2015-12-29 Rovi Technologies Corporation Location-based display characteristics in a user interface
US9323424B2 (en) 2008-10-23 2016-04-26 Microsoft Corporation Column organization of content
US20100107068A1 (en) * 2008-10-23 2010-04-29 Butcher Larry R User Interface with Parallax Animation
US20100105441A1 (en) * 2008-10-23 2010-04-29 Chad Aron Voss Display Size of Representations of Content
US20100105439A1 (en) * 2008-10-23 2010-04-29 Friedman Jonathan D Location-based Display Characteristics in a User Interface
US20100105438A1 (en) * 2008-10-23 2010-04-29 David Henry Wykes Alternative Inputs of a Mobile Communications Device
US20100159966A1 (en) * 2008-10-23 2010-06-24 Friedman Jonathan D Mobile Communications Device User Interface
US20100180233A1 (en) * 2008-10-23 2010-07-15 Kruzeniski Michael J Mobile Communications Device User Interface
US9223411B2 (en) 2008-10-23 2015-12-29 Microsoft Technology Licensing, Llc User interface with parallax animation
US10133453B2 (en) 2008-10-23 2018-11-20 Microsoft Technology Licensing, Llc Alternative inputs of a mobile communications device
US8970499B2 (en) 2008-10-23 2015-03-03 Microsoft Technology Licensing, Llc Alternative inputs of a mobile communications device
US20100105370A1 (en) * 2008-10-23 2010-04-29 Kruzeniski Michael J Contextual Search by a Mobile Communications Device
US9606704B2 (en) 2008-10-23 2017-03-28 Microsoft Technology Licensing, Llc Alternative inputs of a mobile communications device
US20100103124A1 (en) * 2008-10-23 2010-04-29 Kruzeniski Michael J Column Organization of Content
US8825699B2 (en) * 2008-10-23 2014-09-02 Rovi Corporation Contextual search by a mobile communications device
US8086275B2 (en) 2008-10-23 2011-12-27 Microsoft Corporation Alternative inputs of a mobile communications device
US8781533B2 (en) 2008-10-23 2014-07-15 Microsoft Corporation Alternative inputs of a mobile communications device
US9703452B2 (en) 2008-10-23 2017-07-11 Microsoft Technology Licensing, Llc Mobile communications device user interface
US8250494B2 (en) 2008-10-23 2012-08-21 Microsoft Corporation User interface with parallax animation
US20100107100A1 (en) * 2008-10-23 2010-04-29 Schneekloth Jason S Mobile Device Style Abstraction
US8634876B2 (en) 2008-10-23 2014-01-21 Microsoft Corporation Location based display characteristics in a user interface
US9218067B2 (en) 2008-10-23 2015-12-22 Microsoft Technology Licensing, Llc Mobile communications device user interface
US8385952B2 (en) 2008-10-23 2013-02-26 Microsoft Corporation Mobile communications device user interface
US8411046B2 (en) 2008-10-23 2013-04-02 Microsoft Corporation Column organization of content
US8355698B2 (en) 2009-03-30 2013-01-15 Microsoft Corporation Unlock screen
US8892170B2 (en) 2009-03-30 2014-11-18 Microsoft Corporation Unlock screen
US20100248689A1 (en) * 2009-03-30 2010-09-30 Teng Stephanie E Unlock Screen
US9977575B2 (en) 2009-03-30 2018-05-22 Microsoft Technology Licensing, Llc Chromeless user interface
US20100248688A1 (en) * 2009-03-30 2010-09-30 Teng Stephanie E Notifications
US8914072B2 (en) 2009-03-30 2014-12-16 Microsoft Corporation Chromeless user interface
US8238876B2 (en) 2009-03-30 2012-08-07 Microsoft Corporation Notifications
US8175653B2 (en) 2009-03-30 2012-05-08 Microsoft Corporation Chromeless user interface
US8548431B2 (en) 2009-03-30 2013-10-01 Microsoft Corporation Notifications
US8269736B2 (en) 2009-05-22 2012-09-18 Microsoft Corporation Drop target gestures
US20100295795A1 (en) * 2009-05-22 2010-11-25 Weerapan Wilairat Drop Target Gestures
US20100302172A1 (en) * 2009-05-27 2010-12-02 Microsoft Corporation Touch pull-in gesture
US8836648B2 (en) 2009-05-27 2014-09-16 Microsoft Corporation Touch pull-in gesture
US8418077B2 (en) * 2009-08-18 2013-04-09 International Business Machines Corporation File content navigation using binary search
US20110047503A1 (en) * 2009-08-18 2011-02-24 International Business Machines Corporation File content navigation using binary search
US8983537B2 (en) 2009-12-30 2015-03-17 Glenn Johnson Object locator system and method
US8254958B2 (en) 2009-12-30 2012-08-28 Glenn Carl Johnson Audible key locator system
US20110159917A1 (en) * 2009-12-30 2011-06-30 Glenn Carl Johnson Audible Key Locator System
US20110252362A1 (en) * 2010-04-13 2011-10-13 Lg Electronics Inc. Mobile terminal and method of controlling operation of the mobile terminal
US9081496B2 (en) * 2010-04-13 2015-07-14 Lg Electronics Inc. Mobile terminal and method of controlling operation of the mobile terminal
US9430130B2 (en) 2010-12-20 2016-08-30 Microsoft Technology Licensing, Llc Customization of an immersive environment
US9696888B2 (en) 2010-12-20 2017-07-04 Microsoft Technology Licensing, Llc Application-launching interface for multiple modes
US8990733B2 (en) 2010-12-20 2015-03-24 Microsoft Technology Licensing, Llc Application-launching interface for multiple modes
US9766790B2 (en) 2010-12-23 2017-09-19 Microsoft Technology Licensing, Llc Application reporting in an application-selectable user interface
US8560959B2 (en) 2010-12-23 2013-10-15 Microsoft Corporation Presenting an application change through a tile
US8689123B2 (en) 2010-12-23 2014-04-01 Microsoft Corporation Application reporting in an application-selectable user interface
US9864494B2 (en) 2010-12-23 2018-01-09 Microsoft Technology Licensing, Llc Application reporting in an application-selectable user interface
US9870132B2 (en) 2010-12-23 2018-01-16 Microsoft Technology Licensing, Llc Application reporting in an application-selectable user interface
US9213468B2 (en) 2010-12-23 2015-12-15 Microsoft Technology Licensing, Llc Application reporting in an application-selectable user interface
US8612874B2 (en) 2010-12-23 2013-12-17 Microsoft Corporation Presenting an application change through a tile
US11126333B2 (en) 2010-12-23 2021-09-21 Microsoft Technology Licensing, Llc Application reporting in an application-selectable user interface
US10969944B2 (en) 2010-12-23 2021-04-06 Microsoft Technology Licensing, Llc Application reporting in an application-selectable user interface
US9015606B2 (en) 2010-12-23 2015-04-21 Microsoft Technology Licensing, Llc Presenting an application change through a tile
US9229918B2 (en) 2010-12-23 2016-01-05 Microsoft Technology Licensing, Llc Presenting an application change through a tile
US9423951B2 (en) 2010-12-31 2016-08-23 Microsoft Technology Licensing, Llc Content-based snap point
US9383917B2 (en) 2011-03-28 2016-07-05 Microsoft Technology Licensing, Llc Predictive tiling
US9104440B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US9329774B2 (en) 2011-05-27 2016-05-03 Microsoft Technology Licensing, Llc Switching back to a previously-interacted-with application
US10303325B2 (en) 2011-05-27 2019-05-28 Microsoft Technology Licensing, Llc Multi-application environment
US8893033B2 (en) 2011-05-27 2014-11-18 Microsoft Corporation Application notifications
US9052820B2 (en) 2011-05-27 2015-06-09 Microsoft Technology Licensing, Llc Multi-application environment
US9158445B2 (en) 2011-05-27 2015-10-13 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US11272017B2 (en) 2011-05-27 2022-03-08 Microsoft Technology Licensing, Llc Application notifications manifest
US9535597B2 (en) 2011-05-27 2017-01-03 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9104307B2 (en) 2011-05-27 2015-08-11 Microsoft Technology Licensing, Llc Multi-application environment
US11698721B2 (en) 2011-05-27 2023-07-11 Microsoft Technology Licensing, Llc Managing an immersive interface in a multi-application immersive environment
US9658766B2 (en) 2011-05-27 2017-05-23 Microsoft Technology Licensing, Llc Edge gesture
US8687023B2 (en) 2011-08-02 2014-04-01 Microsoft Corporation Cross-slide gesture to select and rearrange
US10579250B2 (en) 2011-09-01 2020-03-03 Microsoft Technology Licensing, Llc Arranging tiles
US8935631B2 (en) 2011-09-01 2015-01-13 Microsoft Corporation Arranging tiles
US10353566B2 (en) 2011-09-09 2019-07-16 Microsoft Technology Licensing, Llc Semantic zoom animations
US8922575B2 (en) 2011-09-09 2014-12-30 Microsoft Corporation Tile cache
US9557909B2 (en) 2011-09-09 2017-01-31 Microsoft Technology Licensing, Llc Semantic zoom linguistic helpers
US10114865B2 (en) 2011-09-09 2018-10-30 Microsoft Technology Licensing, Llc Tile cache
US9244802B2 (en) 2011-09-10 2016-01-26 Microsoft Technology Licensing, Llc Resource user interface
US10254955B2 (en) 2011-09-10 2019-04-09 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US9146670B2 (en) 2011-09-10 2015-09-29 Microsoft Technology Licensing, Llc Progressively indicating new content in an application-selectable user interface
US8830270B2 (en) 2011-09-10 2014-09-09 Microsoft Corporation Progressively indicating new content in an application-selectable user interface
US8933952B2 (en) 2011-09-10 2015-01-13 Microsoft Corporation Pre-rendering new content for an application-selectable user interface
US9223472B2 (en) 2011-12-22 2015-12-29 Microsoft Technology Licensing, Llc Closing applications
US10191633B2 (en) 2011-12-22 2019-01-29 Microsoft Technology Licensing, Llc Closing applications
US9128605B2 (en) 2012-02-16 2015-09-08 Microsoft Technology Licensing, Llc Thumbnail-image selection of applications
US9450952B2 (en) 2013-05-29 2016-09-20 Microsoft Technology Licensing, Llc Live tiles without application-code execution
US9807081B2 (en) 2013-05-29 2017-10-31 Microsoft Technology Licensing, Llc Live tiles without application-code execution
US10110590B2 (en) 2013-05-29 2018-10-23 Microsoft Technology Licensing, Llc Live tiles without application-code execution
US9841874B2 (en) 2014-04-04 2017-12-12 Microsoft Technology Licensing, Llc Expandable application representation
US10459607B2 (en) 2014-04-04 2019-10-29 Microsoft Technology Licensing, Llc Expandable application representation
US9451822B2 (en) 2014-04-10 2016-09-27 Microsoft Technology Licensing, Llc Collapsible shell cover for computing device
US9769293B2 (en) 2014-04-10 2017-09-19 Microsoft Technology Licensing, Llc Slider cover for computing device
US10254942B2 (en) 2014-07-31 2019-04-09 Microsoft Technology Licensing, Llc Adaptive sizing and positioning of application windows
US10592080B2 (en) 2014-07-31 2020-03-17 Microsoft Technology Licensing, Llc Assisted presentation of application windows
US10678412B2 (en) 2014-07-31 2020-06-09 Microsoft Technology Licensing, Llc Dynamic joint dividers for application windows
US10175817B2 (en) * 2014-09-03 2019-01-08 Xi'an Zhongxing New Software Co., Ltd Method and apparatus for switching key functions of touchscreen terminal
US20170277347A1 (en) * 2014-09-03 2017-09-28 Zte Corporation Method and apparatus for switching key functions of touchscreen terminal
US10642365B2 (en) 2014-09-09 2020-05-05 Microsoft Technology Licensing, Llc Parametric inertia and APIs
US9674335B2 (en) 2014-10-30 2017-06-06 Microsoft Technology Licensing, Llc Multi-configuration input device
US20160262241A1 (en) * 2015-02-02 2016-09-08 Orama Inc. Lighting Control Network Commissioning

Also Published As

Publication number Publication date
US7707205B2 (en) 2010-04-27
WO2009004402A1 (en) 2009-01-08

Similar Documents

Publication Publication Date Title
US7707205B2 (en) Apparatus and method for locating a target item in a list
US11550466B2 (en) Method of controlling a list scroll bar and an electronic device using the same
US8170186B2 (en) Electronic device with motion controlled functions
EP2423915B1 (en) Mobile terminal and controlling method thereof
US20090222765A1 (en) Adaptive thumbnail scrollbar
US20100199176A1 (en) Electronic device with text prediction function and method
CN102065178A (en) Shortcut starting method for application functions and mobile terminal
US20090005123A1 (en) Methods, devices, and computer program products for limiting search scope based on navigation of a menu screen
US20080109846A1 (en) System and method for audiovisual content playback
US20120081287A1 (en) Mobile terminal and application controlling method therein
US20090017872A1 (en) Display system for portable electronic devices with related sub-displays
JP2012511867A (en) System and method for modifying a plurality of key input areas based on at least one of detected tilt and tilt rate of an electronic device
US10235017B2 (en) Integrated media user interface
EP2619967B1 (en) System and method of enhancing messages
US20130111405A1 (en) Controlling method for basic screen and portable device supporting the same
US20100303450A1 (en) Playback control
US20090100494A1 (en) System and method for controlling playlist entry selection
US8406752B2 (en) Mobile terminal and controlling method thereof
CN107888781B (en) Information sharing method and device and computer storage medium
TWI449399B (en) System and method for generating a contact list for dialing
WO2007102107A1 (en) Method of setting one or more playback markers for media playback and media player for performing the same

Legal Events

Date Code Title Description
AS Assignment

Owner name: SONY ERICSSON MOBILE COMMUNICATIONS AB, SWEDEN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FREDRIKSSON, JENNY;REEL/FRAME:019518/0878

Effective date: 20070702

Owner name: SONY ERICSSON MOBILE COMMUNICATIONS AB,SWEDEN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:FREDRIKSSON, JENNY;REEL/FRAME:019518/0878

Effective date: 20070702

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

FPAY Fee payment

Year of fee payment: 4

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.)

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.)

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20180427