throbber

`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`SNAP EXHIBIT 1026
`Snap Inc. v. Palo Alto Research Center Inc.
`IPR2021-00987
`
`Page 1 of 11
`
`

`

`suoqeayddy
`
`
`
`
`
`ea)—/__s1owenypuroghey
`
`Feb. 15, 2011
`
`Sheet 1 of 4
`
`US 7,890,865 B2
`
`
`aileeeeeeetaineeeaeWmrnansniaaani
`
`OL}st:sng!:oct:|sweiBolg}‘tniE,|eoee¥uopeaddy
`:||jexeudued
`
`a3vilyur)Busssoo1g
`
`og)-—”FEL
`
`ndjncsyn@in@washBujeedo
`
`
`seinpow1SeBUE}U]BIDENBEG,MBIAPRO)ES
`
`as===an
`
`U.S. Patent
`
`Zeb
`
`Page 2 of 11
`
`_(@BP
`
`Page 2 of 11
`
`
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Feb. 15, 2011
`
`
`
`
`Sheet 2 of 4
`
`
`
`US 7,890,865 B2
`
`
`
`
`
`
`
`Please enter an integer
`
`
`between 1 and 12
`
`
`
`rae 4
`
`Month? [ ws 208
`L 206
`
`
`
`
`
`
`
`
`
`_ @ Field is mandatory.
`
`
`
`
`
`
`
`
`You must enter a value for 'Open Build’,
`
`
`
`be
`
`228
`
`
`
`
`
`
`Page 3 of 11
`
`Page 3 of 11
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Feb. 15, 2011
`
`
`
`
`Sheet 3 of 4
`
`
`
`US 7,890,865 B2
`
`
`300
`
`
`
`
`
`
`Display at least one userinput portion
`
`
`
`
`within a graphical user interface
`
`
`
`
`
`
`
`
`
`
`Receive userinput
`
`
`
`
`
`
`
`
`
`Determine an input validation moment
`
`
`
`
`
`
`
`
`
`
`
`
`
`302
`
`
`
`304
`
`
`
`306
`
`
`
`
`
`
` Was
`
`
`
`
`
`
`Receive userinput
`userinput
`
`required?
`
`
`
`
`
`associated with the user input portion
`
`
`
`
`
`Display
`
`
`
`Any
`information
`
`
`
`
`Was
`
`
`
`
`non-modal
`about the user
`
`
`
`
`
`
`
`
`
`
`
`messages
`input portion
`:
`
`
`received:
`using a non-
`open?
`.
`
`
`
`
`
`
`
`modal message
`
`
`
`
`
`
`
`
`
`?
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Close any open
`
`
`
`
`Close non-modal
`
`non-modal
`
`
`
`message(s)
`
`
`
`message(s)
`
`
`- 312
`
`
`
`318
`
`
`
`316
`
`
`
`
`
`
`
`Page 4 of 11
`
`Page 4 of 11
`
`

`

`
`U.S. Patent
`
`
`
`
`
`Feb. 15, 2011
`
`
`
`
`Sheet 4 of 4
`
`
`
`US 7,890,865 B2
`
`
`
`
`
`
`Valid user input
`
`information
`
`
`
`
`
`
`Processor
`
`
`
`Display
`
`416
`
`
`
`
`|!
`
`
`Guidance
`
`message
`information
`
`
`Logic
`
`
`Error message
`
`information
`
`
`
`
`
`
`400 \
`
`Page 5 of 11
`
`Page 5 of 11
`
`

`

`
`
`US 7,890,865 B2
`
`
`1
`METHODS AND APPARATUSES FOR
`
`
`
`
`PROVIDING MESSAGE INFORMATIONIN
`
`
`
`GRAPHICAL USER INTERFACES BASED ON
`
`
`
`
`USER INPUTS
`
`
`
`TECHNICAL FIELD
`
`
`
`
`
`
`
`
`
`
`
`This invention relates to computers and software, and more
`
`
`
`
`
`
`particularly to methods and apparatuses for providing infor-
`
`
`
`
`
`
`mation in a graphical user interface (GUI) computing envi-
`
`
`
`
`ronment using non-modal messages.
`
`
`
`
`
`
`
`BACKGROUND
`
`
`
`
`2
`
`
`
`
`
`
`
`
`Education, Inc. of Cambridge, Mass. This application uses
`
`
`
`
`
`
`painted graphic messages to indicate mathematical errors or
`
`
`
`
`
`
`
`undefined variables inside the mathematical equation dis-
`
`
`
`
`
`
`
`
`
`played by the application. Here, all errors are displayed
`
`
`
`
`
`
`
`
`together at the same time. However, the user is required to
`
`
`
`
`
`
`
`
`
`then manually place the focus of the GUI appropriately
`
`
`
`
`
`
`
`
`
`within the equation before any changesto the equation can be
`
`
`
`made based ontheerror(s).
`
`
`
`
`
`
`
`
`Consequently, for the above stated reasons and others it
`
`
`
`
`
`
`
`would be advantageous to have improved methods and appa-
`
`
`
`
`
`
`
`
`ratuses that display non-modal messages relating to user
`
`
`
`
`
`
`
`
`input portions of a GUIat the appropriate time and location,
`
`
`
`
`
`
`
`
`
`and that remain displayed for an adequate amountoftime for
`
`
`
`
`
`
`
`
`the user to act upon the message information. Additionally,
`
`
`
`
`
`
`
`
`
`there is a need for more user friendly error and/or guidance
`
`
`
`
`
`
`
`
`messagesthat allow for expedited user entry/re-entry ofvalid
`
`
`
`
`
`
`
`information without requiring manual adjustment of the
`focus of the GUI.
`
`
`
`SUMMARY
`
`
`
`
`
`
`
`
`
`
`
`
`
`Traditional computing devices, and in particular the
`
`
`
`
`
`
`graphical user interfaces (GUIs) provided by the computing
`
`
`
`
`
`
`
`
`devices have relied on the use of message boxes to commu-
`nicate to the user that an error has occurred or to otherwise
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`inform the user about some matter. Typically, such pop-up
`
`
`
`
`
`
`
`
`
`message boxes are modal in that they require the user to
`
`
`
`
`
`
`
`
`
`actively dismiss them, for example, by hitting either an
`
`
`
`
`
`
`
`
`“Okay” or “Cancel” button within the message box. Often,
`
`
`
`
`
`
`
`Improved methods and apparatuses are provided for deter-
`
`
`
`
`
`
`
`
`
`
`the user needs to dismiss the message boxpriorto taking any
`
`
`
`
`
`
`mining when and/or how to display non-modal messages
`
`
`
`
`
`
`
`corrective action and/or otherwise continuing on with what-
`
`
`
`
`
`
`relating to user input portions of a graphical user interface
`evertask is at hand.
`
`
`
`
`(GUD.
`
`
`
`
`
`
`
`There are other drawbacks to such traditional message
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`for
`The above stated needs and others are satisfied,
`boxes too. By way of example, modal message boxes can be
`
`
`
`
`
`
`
`
`
`
`
`
`example, by a method in accordance with certain aspects of
`distracting to the user, and/or unintentionally/prematurely
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`the present invention that includes displaying at least one user
`dismissed. For example, if the user is busy typing orclicking
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`input portion within a GUIand determiningif the user input
`elsewhere when the box appears, they might accidentally
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`portion is in an invalid state by determining that valid user
`dismiss the modal message box before having a chance to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`input associated with the user input portion has not been
`read it. Furthermore, a typical modal message box does not
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`received. The method further includes displaying a non-
`graphically indicate the source of an error and/or problem,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`modal message within the GUI. The non-modal messageis
`should it be visible within the GUI. For example,if the user
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`visibly graphically associated with the user input portion. The
`entered the wrong information in a user inputfield presented
`
`
`
`
`
`
`
`
`
`method also includes automatically applying a focus of the
`by the GUI.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`GUIon theuserinput portion. As long as the focus ofthe GUI
`For these and other reasons, more recent operating systems
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`remains on the user input portion, the method includesdis-
`and applications have introducedthe use ofa non-modalerror
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`playing the non-modal messageuntil the user input portionis
`message within a GUI. One exemplary type of non-modal
`determined to be in a validstate.
`
`
`
`
`
`
`
`
`
`
`message is a pop-up error message. Balloon error messages
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`In accordance with certain other exemplary aspects of the
`improve the way that error information is presented to the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`present invention, a computer-readable medium is provided,
`user by replacing the usual modal message box with a pop-up
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`which has computer-executable instructions for causing a
`error messagethat is not modal and thus does not need to be
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`GUI having at least one user input portion to be displayed,
`dismissed by the user before the error can be corrected. A
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`45
`selectively causing a focus of the GUI to be applied on the
`typical pop-up error messagehasthe additional advantage of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`user input portionif valid user input associated with said user
`being strategically located to help identify the location within
`
`
`
`
`
`
`
`
`
`the GUIthat is associated with the error. This allows the user
`
`
`
`
`
`
`
`
`
`
`input portion has not been received, and displaying a non-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`modal message within the GUIthatis visibly connected to the
`to quickly identify where corrections may be needed.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`user input portion until the user input portion is determined to
`A further exemplary drawback to conventional modal mes-
`beina valid state or the focus of said GUIis removedfrom the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`sage boxesis that the message box needsto be dismissed by
`
`
`
`
`
`
`
`
`
`
`
`
`user input portion.
`the user before the user is allowed to make any corrections.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Similarly, conventional pop-up error message techniques
`In accordance withstill other aspects of the present inven-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`may remove the pop-up error message automatically after
`tion, an apparatus is provided. The apparatus includeslogic,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`having displayed it for a period of time and/or removing the
`memory, at least oneuser input device and atleast one display
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`balloon error message from the display whenthe user begins
`device. The logic is configured to cause a GUIto bevisibly
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`making applicable corrections. Thus, if the modal message
`presented via the display device. The GUI includes at least
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`box or pop-up error message includes information that may
`one user input portion. The logic is further configured to
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`be beneficial during subsequent input by the user, then the
`determine if the user input portion is in an invalid state by
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`user will need to remember or perhaps write down such
`determining that valid user input associated with the user
`
`
`
`
`
`
`
`
`
`
`
`information.
`
`input portion has not been received. The logic will then cause
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`a non-modal message to be presented within the GUI. Here,
`While conventional pop-up error messages usually help
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`the non-modal message is visibly associated with the user
`locate an error within the GUI, one shortcomingis that the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`input portion. The logic applies a user input focus of the GUI
`user is required to manually place or otherwise associate(e.g.,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`on the user input portion. As long as the focus ofthe GUIis on
`using a cursor, entry point, etc.) the focus of the GUI on the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`the user input portion, the logic will continue presenting the
`data field being pointed too, if they have not done so previ-
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`non-modal message until the user input portion is determined
`ously. One example is the current version of an application
`
`
`
`
`
`
`to be inavalid state.
`
`
`
`named MathCad available from MathSoft Engineering &
`
`
`
`20
`
`25
`
`
`
`30
`
`
`
`
`
`40
`
`
`
`
`
`50
`
`
`
`55
`
`
`
`60
`
`
`
`65
`
`
`
`Page 6 of 11
`
`Page 6 of 11
`
`

`

`
`
`US 7,890,865 B2
`
`5
`
`
`
`10
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`
`
`
`
`
`
`
`Turning to the drawings, wherein like reference numerals
`
`
`
`
`
`
`
`refer to like elements, the invention is illustrated as being
`
`
`
`
`implementedin a suitable computing environment.
`
`
`
`
`
`
`
`Although not required, the invention will be described in
`
`
`
`
`
`
`the general context ofcomputer-executable instructions, such
`
`
`
`
`
`
`
`as program modules, being executed by a personal computer.
`
`
`
`
`
`
`Generally, program modules include routines, programs,
`
`
`
`
`
`
`
`
`objects, components, data structures, etc. that perform par-
`
`
`
`
`
`
`
`ticular tasks or implementparticular abstract data types.
`
`
`
`
`
`
`
`
`
`Moreover, those skilled in the art will appreciate that the
`
`
`
`
`
`
`
`
`invention may be practiced with other computer system con-
`
`
`
`
`
`figurations,
`including hand-held devices, multi-processor
`
`
`
`
`
`systems, microprocessor based or programmable consumer
`
`
`
`
`
`
`electronics, network PCs, minicomputers, mainframe com-
`
`
`
`
`
`
`
`
`
`puters, and the like. The invention mayalso be practiced in
`
`
`
`
`
`
`
`distributed computing environments where tasks are per-
`
`
`
`
`
`
`
`
`formed by remote processing devices that are linked through
`
`
`
`
`
`
`a communications network.In a distributed computing envi-
`
`
`
`
`
`
`
`
`ronment, program modules may belocated in both local and
`
`
`
`
`remote memory storage devices.
`
`
`
`
`
`
`FIG.1 illustrates an example of a suitable computing envi-
`
`
`
`
`
`
`
`ronment 120 on which the subsequently described methods
`
`
`
`
`
`
`and apparatuses may be implemented. Exemplary computing
`
`
`
`
`
`
`
`environment 120 is only one example ofa suitable computing
`
`
`
`
`
`
`
`environmentandis not intended to suggest any limitation as
`
`
`
`
`
`
`
`to the scope of use or functionality of the improved methods
`
`
`
`
`
`
`
`and systems described herein. Neither should computing
`
`
`
`
`
`
`environment 120 be interpreted as having any dependency or
`
`
`
`
`
`
`requirement relating to any one or combination of compo-
`
`
`
`
`
`nents illustrated in computing environment 120.
`
`
`
`
`
`
`
`
`The improved methods and apparatuses herein are opera-
`
`
`
`
`
`
`
`
`tional with numerous other general purpose or special pur-
`
`
`
`
`
`
`pose computing system environments or configurations.
`
`
`
`
`
`
`Examples of well known computing systems, environments,
`
`
`
`
`
`
`
`
`
`and/or configurations that may be suitable include, but are not
`
`
`
`
`
`
`
`limited to, personal computers, server computers, thin clients,
`
`
`
`
`
`
`
`thick clients, handheld or laptop devices, multiprocessor sys-
`
`
`
`
`
`
`
`tems, microprocessor-based systems, set top boxes, program-
`
`
`
`
`
`
`mable consumerelectronics, network PCs, minicomputers,
`
`
`
`
`
`mainframe computers, distributed computing environments
`
`
`
`
`
`
`
`
`that include any ofthe above systemsor devices, and the like.
`
`
`
`
`
`
`
`As shown in FIG. 1, computing environment 120 includes
`
`
`
`
`
`
`
`a general-purpose computing device in the form of a com-
`
`
`3
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`
`
`
`
`
`
`
`
`
`
`
`A more complete understanding of the various exemplary
`
`
`
`
`
`
`
`methods and apparatuses ofthe present invention may be had
`
`
`
`
`
`
`
`
`by reference to the following detailed description when taken
`
`
`
`
`
`
`
`in conjunction with the accompanying drawings wherein:
`
`
`
`
`
`
`FIG. 1 is a block diagram depicting a computer system/
`environment suitable for use in accordance with certain
`
`
`
`
`
`
`
`
`
`
`
`exemplary implementationsof the present invention.
`
`
`
`
`
`
`FIG.2 depicts illustrative representations of graphical user
`
`
`
`
`
`
`
`
`interfaces (GUIs) having user input portions and information
`
`
`
`
`
`
`being displayed in non-modal messages, in accordance with
`
`
`
`
`
`certain exemplary implementations of the present invention.
`
`
`
`
`
`
`
`FIG.3 is a flow diagram depicting a process for displaying
`
`
`
`
`
`
`
`information associated with user input portions of a GUI, in
`
`
`
`
`
`accordance with certain exemplary implementations of the
`
`
`present invention.
`
`
`
`
`
`
`FIG.4 is a block diagram depicting a device configured to
`
`
`
`
`
`
`
`display information associated with user input portions of a
`
`
`
`
`
`
`
`GUI, in accordance with certain further exemplary imple-
`
`
`
`
`mentations of the present invention.
`
`DETAILED DESCRIPTION
`
`
`
`
`Page 7 of 11
`
`
`4
`
`
`
`
`
`
`
`
`puter 130. The components of computer 130 may include one
`
`
`
`
`
`
`
`or more processors or processing units 132, a system memory
`
`
`
`
`
`
`
`
`134, and a bus 136 that couples various system components
`
`
`
`
`
`
`including system memory 134 to processor 132.
`
`
`
`
`
`
`
`
`Bus 136 represents one or more of any of several types of
`
`
`
`
`
`
`busstructures, including a memory bus or memory controller,
`
`
`
`
`
`
`
`
`a peripheral bus, an accelerated graphics port, and a processor
`
`
`
`
`
`
`
`
`
`or local bus using any ofa variety ofbus architectures. By way
`
`
`
`
`
`
`
`
`of example, and not limitation, such architectures include
`
`
`
`
`
`
`
`Industry Standard Architecture (ISA) bus, Micro Channel
`
`
`
`
`
`
`
`
`Architecture (MCA) bus, Enhanced ISA (EISA) bus, Video
`
`
`
`
`
`
`
`Electronics Standards Association (VESA) local bus, and
`
`
`
`
`
`
`
`Peripheral ComponentInterconnects (PCI) bus also known as
`Mezzanine bus.
`
`
`
`
`
`
`
`
`
`Computer 130 typically includes a variety of computer
`
`
`
`
`
`
`
`
`
`readable media. Such media may be any available media that
`
`
`
`
`
`
`
`
`is accessible by computer 130, and it includes both volatile
`
`
`
`
`
`
`and non-volatile media,
`removable and non-removable
`media.
`
`
`
`
`
`
`
`
`
`In FIG. 1, system memory 134 includes computer readable
`
`
`
`
`
`
`
`
`mediain the form of volatile memory, such as random access
`
`
`
`
`
`
`
`memory (RAM) 140, and/or nonvolatile memory, such as
`
`
`
`
`
`
`
`
`read only memory (ROM) 138. A basic input/output system
`
`
`
`
`
`
`
`
`
`(BIOS)142, containingthe basic routinesthathelp to transfer
`
`
`
`
`
`
`
`information between elements within computer 130, such as
`
`
`
`
`
`
`during start-up, is stored in ROM 138. RAM 140 typically
`
`
`
`
`
`
`
`
`contains data and/or program modules that are immediately
`
`
`
`
`
`
`accessible to and/or presently being operated on by processor
`132.
`
`
`
`
`
`
`
`
`Computer 130 may further include other removable/non-
`
`
`
`
`
`
`removable, volatile/non-volatile computer storage media. For
`
`
`
`
`
`
`
`
`
`example, FIG.1 illustrates a hard disk drive 144 for reading
`
`
`
`
`
`
`from and writing to a non-removable, non-volatile magnetic
`
`
`
`
`
`
`
`
`media (not shown and typically called a “hard drive”), a
`
`
`
`
`
`
`
`
`
`magnetic disk drive 146 for reading from and writing to a
`
`
`
`
`
`
`
`removable, non-volatile magnetic disk 148 (e.g., a “floppy
`
`
`
`
`
`
`
`
`
`disk”), and an optical disk drive 150 for reading from or
`
`
`
`
`
`
`
`writing to a removable, non-volatile optical disk 152 such as
`
`
`
`
`a CD-ROM/R/RW, DVD-ROM/R/RW/+R/RAM or other
`
`
`
`
`
`
`
`
`
`
`optical media. Hard disk drive 144, magnetic disk drive 146
`
`
`
`
`
`
`
`
`
`
`and optical disk drive 150 are each connected to bus 136 by
`one or moreinterfaces 154.
`
`
`
`
`
`
`
`
`
`
`
`The drives and associated computer-readable media pro-
`
`
`
`
`
`
`vide nonvolatile storage of computer readable instructions,
`
`
`
`
`
`
`
`
`
`data structures, program modules, and other data for com-
`
`
`
`
`
`
`
`puter 130. Although the exemplary environment described
`
`
`
`
`
`
`
`
`herein employs a hard disk, a removable magnetic disk 148
`
`
`
`
`
`
`
`and a removable optical disk 152, it should be appreciated by
`
`
`
`
`
`
`
`
`
`those skilled in the art that other types of computer readable
`
`
`
`
`
`
`
`
`media which canstore data that is accessible by a computer,
`
`
`
`
`
`
`
`
`such as magnetic cassettes, flash memory cards, digital video
`
`
`
`
`
`
`
`
`disks, random access memories (RAMs), read only memories
`
`
`
`
`
`
`
`
`
`
`(ROM), and the like, may also be used in the exemplary
`
`
`operating environment.
`
`
`
`
`
`
`
`A numberof program modules maybe stored on the hard
`
`
`
`
`
`
`
`
`disk, magnetic disk 148, optical disk 152, ROM 138, or RAM
`
`
`
`
`
`
`
`140, including, e.g., an operating system 158, one or more
`
`
`
`
`
`
`
`application programs 160, other program modules 162, and
`
`
`
`program data 164.
`
`
`
`
`
`
`
`The improved methods and systems described herein may
`
`
`
`
`
`
`
`be implemented within operating system 158, one or more
`
`
`
`
`
`
`
`application programs 160, other program modules 162, and/
`
`
`
`
`or program data 164.
`
`
`
`
`
`
`
`
`A user may provide commandsand information into com-
`
`
`
`
`
`
`
`
`
`puter 130 through input devices such as keyboard 166 and
`
`
`
`
`
`
`
`
`pointing device 168 (such as a “mouse’’). Other input devices
`
`
`
`
`
`
`
`
`(not shown) may include a microphone, joystick, game pad,
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 7 of 11
`
`

`

`
`
`US 7,890,865 B2
`
`
`5
`
`
`
`
`
`
`
`
`
`satellite dish, serial port, scanner, camera, etc. These and
`
`
`
`
`
`
`
`
`
`other input devices are connected to the processing unit 132
`
`
`
`
`
`
`
`
`
`through a user input interface 170 that is coupled to bus 136,
`
`
`
`
`
`
`
`
`but may be connected by other interface and busstructures,
`
`
`
`
`
`
`
`
`
`such as a parallel port, game port, or a universal serial bus
`
`(USB).
`
`
`
`
`
`
`
`
`A monitor 172 or other type of display device is also
`
`
`
`
`
`
`
`
`connected to bus 136 via an interface, such as a video adapter
`
`
`
`
`
`
`
`174. In addition to monitor 172, personal computers typically
`
`
`
`
`
`
`
`
`include other peripheral output devices (not shown), such as
`
`
`
`
`
`
`
`
`speakers and printers, which may be connected through out-
`
`
`
`
`put peripheral interface 175.
`
`
`
`
`
`
`Computer 130 may operate in a networked environment
`
`
`
`
`
`
`
`using logical connections to one or more remote computers,
`
`
`
`
`
`
`
`
`such as a remote computer 182. Remote computer 182 may
`
`
`
`
`
`
`
`include manyorall of the elements and features described
`
`
`
`
`herein relative to computer 130.
`
`
`
`
`
`
`
`
`Logical connections shown in FIG.1 are a local area net-
`
`
`
`
`
`
`
`
`
`work (LAN) 177 and a general wide area network (WAN)
`
`
`
`
`
`
`179. Such networking environments are commonplace in
`
`
`
`
`
`
`offices, enterprise-wide computer networks, intranets, and
`the Internet.
`
`
`
`
`
`
`
`
`When used in a LAN networking environment, computer
`
`
`
`
`
`
`130 is connected to LAN 177 via networkinterface or adapter
`
`
`
`
`
`
`
`186. When used in a WAN networking environment, the
`
`
`
`
`
`
`
`computer typically includes a modem 178 or other means for
`
`
`
`
`
`
`establishing communications over WAN 179. Modem 178,
`
`
`
`
`
`
`
`which maybeinternal or external, may be connected to sys-
`
`
`
`
`
`
`
`
`
`
`
`tem bus 136 via the user input interface 170 or other appro-
`30
`
`
`priate mechanism.
`
`
`
`
`
`Depicted in FIG.1, is a specific implementation of a WAN
`
`
`
`
`
`
`
`
`
`via the Internet. Here, computer 130 employs modem 178 to
`
`
`
`
`
`
`
`establish communications with at least one remote computer
`182 via the Internet 180.
`
`
`
`
`
`
`
`
`
`
`In a networked environment, program modules depicted
`
`
`
`
`
`
`
`relative to computer 130, or portionsthereof, may be stored in
`
`
`
`
`
`
`
`
`a remote memory storage device. Thus, e.g., as depicted in
`
`
`
`
`
`
`
`FIG. 1, remote application programs 189 may reside on a
`
`
`
`
`
`
`
`memory device of remote computer 182. It will be appreci-
`ated that the network connections shown and described are
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`exemplary and other meansofestablishing a communications
`
`
`
`
`
`
`link between the computers may be used.
`
`
`
`
`
`
`
`Reference is now to FIG. 2, which depictsillustrative rep-
`
`
`
`
`
`
`
`resentations of graphical user interfaces (GUIs) having user
`
`
`
`
`
`
`
`input portions and information being displayed in non-modal
`
`
`
`
`
`
`messages, in accordance with certain exemplary implemen-
`
`
`
`tations of the present invention.
`
`
`
`
`
`
`
`By way of example, a GUI 202 is represented as being
`
`
`
`
`
`
`
`displayed by a display device (dashed-line box) 200. Within
`
`
`
`
`
`
`
`
`GUI 202is a plurality of user input portions 204a-n and 208.
`
`
`
`
`
`
`
`
`Incertain implementations, user input portions 204a-n and/or
`
`
`
`
`
`
`
`
`
`
`
`208 take the form of a data entry field suitable for the user to
`
`
`
`
`
`
`
`type or otherwise enter alphanumeric character strings and
`
`
`
`
`
`
`
`
`
`
`the like. Thus, for example, user input portion 208 is illus-
`55
`
`
`
`
`
`
`
`
`
`trated as being a userinput field designedto allow the user to
`
`
`
`
`
`
`enter a numerical numberrelating to a month of the year. A
`
`
`
`
`
`
`
`prompt 206 is shownassoliciting such user input.
`
`
`
`
`
`
`
`
`In other implementations, for example, user input portions
`
`
`
`
`
`
`
`204a-n may include user selectable/activated buttons, knobs,
`
`
`
`
`
`
`
`
`sliders, or other like graphically displayed user input mecha-
`
`
`
`
`
`
`
`nisms. It should be recognized,therefore, that the rectangular
`
`
`
`
`
`
`
`
`shaped dashed-line boxes defining user inputportions in FIG.
`
`
`
`
`
`
`
`
`
`
`2 are merely representative shapes and that the user input
`
`
`
`
`
`
`
`
`
`portions maytake on any applicable shape,pattern, color, etc.
`
`
`
`
`
`
`
`
`
`Moreover, certain GUIs may only have a single user input
`
`
`
`
`
`
`
`
`portion, while other implementations have many user input
`
`portions.
`
`
`6
`
`
`
`
`
`
`
`
`
`Asillustrated, user input portion 208 includes a user input
`
`
`
`
`
`
`
`
`
`(data) of “15”. In accordance with certain aspects of the
`
`
`
`
`
`
`
`
`
`present invention, this user input value has been determined
`
`
`
`
`
`
`
`
`to represent an invalid entry since prompt 206 is requesting
`that the user enter a numerical identifier for a month of the
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`year and only integers between 1 and 12 are valid entries.
`
`
`
`
`
`Accordingly, at a determined validation moment associated
`
`
`
`
`
`
`
`
`
`
`
`with GUI 202 and/or user input portion 208, the user input
`
`
`
`
`
`
`
`data (or lack thereof) is analyzed to determineif it is valid or
`
`
`
`
`
`
`
`
`
`invalid. If the user input data is determined to be valid, then
`
`
`
`
`
`
`
`
`the process associated with and/or supported by user input
`
`
`
`
`
`
`
`
`portion 208 is allowed to continue in some manner.Ifthe user
`
`
`
`
`
`
`
`input data is determined to be invalid, then a non-modal
`
`
`
`
`
`
`
`message 210 is generated and displayed. In the example in
`
`
`
`
`
`
`
`
`FIG.2, non-modal message 210 takes the shape of a balloon
`
`
`
`
`
`
`message having a tip pointing to or otherwise directing the
`
`
`
`
`
`
`
`
`
`userto user portion 208 which currently contains invalid user
`
`
`
`
`
`
`
`
`
`inputdata (i.e., the number“15”’). Includedin this exemplary
`
`
`
`
`
`
`
`visible graphical non-modal message 210 is message infor-
`
`
`
`
`
`
`
`
`
`mationthat reads “Please enter an integer between 1 and 12”.
`
`
`
`
`
`
`
`In accordancewith certain aspectsofthe present invention,
`
`
`
`
`
`
`
`
`when non-modal message 210 is displayed the “focus” of
`
`
`
`
`
`
`
`GUI 202 is placed, moved or otherwise applied to user input
`
`
`
`
`
`
`
`
`field 208. Thus, for example, in certain implementations user
`
`
`
`
`
`
`
`
`
`input portion 208 or the current data therein may be high-
`
`
`
`
`
`
`
`
`lighted or changed in somevisible mannerto help the user to
`
`
`
`
`
`
`
`
`identify the user input portion associated with non-modal
`
`
`
`
`
`
`message 210. In certain exemplary implementations, a cursor
`
`
`
`
`
`
`
`
`
`
`
`or like visible item can be placed in user input portion 208 and
`
`
`
`
`
`
`
`logic supporting GUI 202 operatively configured to receive
`
`
`
`
`new/revised user input data.
`
`
`
`
`
`
`
`
`
`To better serve the user during this non-modal message
`
`
`
`
`
`
`
`
`guided user input process, non-modal message 210 is main-
`
`
`
`
`
`
`
`
`tained/displayed until a valid user input has been provided
`and/or the focus of GUI 202 is moved/removed from user
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`input portion 208. Unlike conventional non-modal messages
`
`
`
`
`
`
`
`
`
`the message information remains visible while the user pro-
`
`
`
`
`
`
`
`
`
`
`vides new input(s) and until the user provides valid user
`
`
`
`
`
`
`
`inputs. Non-modal message 210 is no longer displayed once
`
`
`
`
`
`
`
`
`
`
`
`the user has input valid user input. If the user decides to
`
`
`
`
`
`
`
`
`
`redirect the focus of GUI 202, then non-modal message 210
`
`
`
`
`
`
`
`
`
`will stop being displayed. However, if the user has failed to
`
`
`
`
`
`
`
`
`provide requisite valid user inputs, then non-modal message
`
`
`
`
`
`
`
`
`
`210 will be displayed again. The user can change or move the
`
`
`
`
`
`
`
`focus of GUI 202 by selectively moving and/or activating a
`
`
`
`
`
`
`
`pointing device such as a mouse, touch-pad,trackball, or the
`
`
`
`
`
`
`
`
`like, and/or striking one or more input keys on a keyboard or
`
`
`
`
`
`
`
`other like mechanism. For example, in certain implementa-
`
`
`
`
`
`
`
`
`tions, the user may hit a “tab” key to selectively move the
`
`
`
`
`
`
`focus of GUI 202 to another user input portion.
`
`
`
`
`
`
`
`
`In still other implementations, the focus of GUI 202 can be
`
`
`
`
`
`
`
`
`automatically moved to another portion within GUI 202. For
`
`
`
`
`
`
`
`
`
`example, the focus of GUI 202 may changeafter the passage
`
`
`
`
`
`
`
`
`of a certain amount of time. Non-modal message 210 may
`
`
`
`
`
`
`
`also time out in some manner as maybe needed.
`
`
`
`
`
`
`
`FIG.2 also includes a portion of an exemplary GUI 220
`
`
`
`
`
`
`
`further illustrating certain features associated with certain
`
`
`
`
`
`
`implementations of a non-modal message 224 that is dis-
`
`
`
`
`
`
`
`
`played in reference to user input field 222. Here, at an appli-
`
`
`
`
`
`
`
`
`cable validation moment, it was determined that the user
`
`
`
`
`
`
`
`
`
`failed to provide requisite valid user input to user inputfield
`
`
`
`
`
`
`
`
`222. Hence, non-modal message 224 has been displayed. In
`
`
`
`
`
`
`
`this example, non-modal message 224 includes a graphical
`
`
`
`
`
`
`
`
`icon 226, an identifier 228 and message information 230.
`
`
`
`
`
`
`
`
`Graphical icon 226 in this example visibly identifies that an
`
`
`
`
`
`
`
`
`error has occurred. Identifier 228 providesa title or summary,
`
`
`
`
`
`
`
`for example, of the error (here, e.g., “Field is mandatory.”).
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`20
`
`25
`
`40
`
`45
`
`50
`
`60
`
`65
`
`Page 8 of 11
`
`Page 8 of 11
`
`

`

`
`7
`
`
`
`
`
`
`
`Message information 230 in this example further elaborates
`
`
`
`
`
`
`
`
`
`
`on the error by stating that ““You mustenter a value for Open
`
`
`
`
`
`
`
`
`Build” Although not visually illustrated by the screen shot of
`
`
`
`
`
`
`
`
`
`GUI 220, the focus of GUI 220 is user inputfield 222.
`
`
`
`
`
`
`
`Attention is now drawn to FIG. 3, whichis a flow diagram
`
`
`
`
`
`
`depicting a process 300 for displaying information associated
`
`
`
`
`
`
`
`
`with user input portions of a GUI, in accordance with certain
`
`
`
`
`exemplary implementationsof the present invention.
`
`
`
`
`
`
`
`
`
`In step 302, at least one user input portion is displayed
`
`
`
`
`
`
`
`
`
`
`within a GUL. In step 304, user input associated with the user
`
`
`
`
`
`
`
`input portion is received. In step 306, a determination is made
`
`
`
`
`
`
`
`
`that an input validation moment associated with the GUI
`
`
`
`
`
`
`
`
`
`and/or user input portion has been reached. For example, an
`
`
`
`
`
`
`
`
`input validation moment maybereachedafter the passage of
`
`
`
`
`
`
`
`
`
`a period of time with or without user inputs received in step
`
`
`
`
`
`
`
`
`304. An input validation moment may be associated with the
`
`
`
`
`
`
`
`
`user selecting a particular GUI mechanism, such as, for
`
`
`
`
`
`
`
`example, a form “complete” button, an “enter” button, a
`
`
`
`
`
`
`
`
`
`“submit” button, a “send”button, etc. Note that process 300
`
`
`
`
`
`
`
`
`
`
`
`m

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket