IP Library Granted Patent US 8,954,871
Granted Patent B2
US 8,954,871 · App. 12/002,280 · Granted Feb 10, 2015

User-centric widgets and dashboards

Inventors: John O. Louch (San Luis Obispo, CA); Imran A. Chaudhri (San Francisco, CA)
Assignee: Apple Inc.
G06F9/4443G06F9/44505G06F3/04817G06F9/5033
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,954,871
App. No.
12/002,280
Granted
Feb 10, 2015
Kind
B2
Abstract

User-centric widgets and dashboards are automatically modified to reflect a user's goals and needs.

Claims (73)

1. A method, comprising:

collecting historical data identifying sequences of user actions for tasks performed on a device, wherein each sequence of user actions includes navigation through a user interface of the device and interaction with at least one application;

calculating, by the device, a current geographic location of the device;

updating a task model of user action based on the collected historical data and the current geographic location;

inferring a task of the user based on a comparison of a current sequence of user actions with the task model;

identifying a number of dashboards or widgets based on the inferred task;

presenting a list of the identified dashboards or widgets on a user interface of the device;

selecting a dashboard or widget from the list of dashboards or widgets;

invoking the selected dashboard or widget; and

updating the selected dashboard or widget based on the task model.

2. The method of claim 1 , wherein updating the selected dashboard or widget further comprises: updating the presentation of the widget.

3. The method of claim 1 , wherein updating the selected dashboard or widget further comprises: updating a state of the widget.

4. The method of claim 1 , wherein updating the selected dashboard or widget further comprises: updating functionality of the widget.

5. The method of claim 1 , further comprising:

storing the task model on a network.

6. The method of claim 1 , wherein updating the selected dashboard or widget further comprises: establishing a relationship between the dashboard or widget and at least one other dashboard or widget.

7. The method of claim 1 , wherein updating the selected dashboard or widget further comprises: updating the dashboard or widget based on a geographic location of the device hosting the dashboard or widget.

8. The method of claim 1 , wherein updating the selected dashboard or widget further comprises: updating a default presentation of the dashboard or widget based on the task model or a geographic location of the device hosting the dashboard or widget.

9. The method of claim 1 , further comprising: updating the dashboard or widget based on user preferences associated with an operating system or non-widget application.

10. The method of claim 1 , wherein the selected dashboard or widget is presented on the device and further comprising: updating the dashboard or widget based on a profile of a user of the device.

11. The method of claim 1 , wherein the selected dashboard or widget is presented on the device and further comprising: updating the dashboard or widget based on a context in which a user of the device is working.

12. The method of claim 1 , wherein updating further comprises: updating the presentation of the selected dashboard or widget to include an advertisement.

13. The method of claim 12 , wherein the advertisement is targeted to the task model.

14. The method of claim 1 , wherein identifying a number of dashboards or widgets based on the task model comprises searching a repository for dashboards or widgets based on the task model.

15. The method of claim 1 , wherein presenting the list of dashboards or widgets on the user interface comprises enabling a preview of a dashboard or widget in the list.

16. A system comprising:

a processor;

a computer-readable medium operatively coupled to the processor and having instructions stored thereon, which, when executed by the processor, causes the processor to perform operations comprising:

collecting historical data identifying sequences of user actions for tasks performed on a device, wherein each sequence of user actions includes navigation through a user interface of the device and interaction with at least one application;

calculating, by the system, a current geographic location of the system;

updating a task model of user action based on the collected historical data and the current geographic location;

inferring a task of the user based on a comparison of a current sequence of user actions with the task model;

identifying a number of dashboards or widgets based on the inferred task;

presenting a list of the identified dashboards or widgets on a user interface of the device;

selecting a dashboard or widget from the list of dashboards or widgets;

invoking the selected dashboard or widget; and

updating the selected dashboard or widget based on the task model.

17. The system of claim 16 , wherein the system is a device from a group of devices consisting of a computer, an electronic device, a mobile phone, a personal digital assistant (PDA), a table, a media player/recorder, a set-top box, a game console, a wearable device, a television, a radio and any combination of the devices.

18. The system of claim 16 , wherein a dashboard or widget is updated and the dashboard or widget is from a group of dashboards or widgets consisting of a sports widget, a phone book widget, a travel guide widget, a maps widget, a music widget, a movie widget, a weather widget, a world clock widget, a stocks widget, a photo widget, a search engine widget and a currency converter widget.

19. The system of claim 16 , wherein the user data is collected automatically by the data collection engine.

20. The system of claim 16 , wherein identifying a number of dashboards or widgets based on the task model comprises searching a repository for dashboards or widgets based on the task model.

21. The system of claim 16 , wherein presenting the list of dashboards or widgets on the user interface comprises enabling a preview of a dashboard or widget in the list.

22. A method comprising:

storing one or more dashboards or widgets on a device;

collecting historical data identifying sequences of user actions for tasks performed on the device, wherein each sequence of user actions includes navigation through a user interface of the device and interaction with at least one application;

calculating, by the device, a current geographic location of the device;

updating a task model of user action based on the collected historical data and the current geographic location of the device;

inferring a task of the user based on a comparison of a current sequence of user actions with the task model;

identifying a number of new dashboards or new widgets based on the inferred goal or need;

presenting a list of the identified new dashboards or new widgets on a user interface of the device;

selecting a new dashboard or new widget from the list of new dashboards or new widgets;

presenting a preview of the new dashboard or new widget on the device.

23. The method of claim 22 , further comprising searching a repository for new dashboards or new widgets based on the inferred ask.

24. A method comprising:

storing one or more dashboards or widgets on a device;

collecting historical data identifying sequences of user actions for tasks performed on the device, wherein each sequence of user actions includes navigation through a user interface of the device and interaction with at least one application;

calculating, by the device, a current geographic location of the device;

updating a task model of user action based on the collected historical data and the current geographic location;

inferring a task of the user based on a comparison of a current sequence of user actions with the task model;

identifying a number of new dashboards or new widgets based on the inferred task;

presenting a list of the identified new dashboards or new widgets on a user interface of the device;

selecting a new dashboard or new widget from the list of new dashboards or new widgets;

downloading the selected new dashboard or new widget to the device.

25. A method comprising:

storing one or more dashboards or widgets on a device;

collecting historical data identifying sequences of user actions for tasks performed on the device, wherein each sequence of user actions includes navigation through a user interface of the device and interaction with at least one application;

calculating, by the device, a current geographic location of the device;

updating a task model of user action based on the collected historical data and the current geographic location;

inferring a task of the user based on a comparison of a current sequence of user actions with the task model;

identifying a number of new dashboards or new widgets based on the inferred task;

presenting a list of the identified new dashboards or new widgets on a user interface of the device;

selecting a new dashboard or new widget from the list of new dashboards or new widgets;

installing the selected new dashboard or new widget on the device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2008
From: LOUCH, JOHN O.; CHAUDHRI, IMRAN A.
To: APPLE INC.
Reel/Frame 020319/0932 →
Continuity (2)
Provisional Application 60950410 · Jul 18, 2007
Related Publication 20090024944A1 · Jan 22, 2009