Patents by Inventor Craig Federighi
Craig Federighi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20150346973Abstract: A system and method are disclosed for displaying a graphical user interface (GUI) on a device display. The display has dimensions of a first size. The GUI is configured for output on a display of the first size, but the device reports the second size. The reporting is responsive to receiving a request to configure the GUI for output on a display of a second size, according to some embodiments. The GUI, configured for output on a display of the second size, is displayed on the device display that has dimensions of the first size.Type: ApplicationFiled: April 17, 2015Publication date: December 3, 2015Inventors: Joshua H. Shaffer, Jason C. Beaver, Craig Federighi
-
Publication number: 20140365438Abstract: The described embodiments distribute and synchronize objects in a network. More specifically, the described embodiments distribute copies of objects locally (i.e., store copies of objects in local address spaces). By storing a copy of a given object in a local address space, the object's methods may be executed locally, which can help to avoid excessive network traffic associated with remotely executing the object's methods. However, executing an object's methods locally can result in the state of the object (i.e., data associated with the object, etc.) becoming out of sync with other copies of the object in the network. To avoid issues associated with unsynchronized copies of the object in the network, the described embodiments use a policy that specifies conditions under which objects are to be synchronized.Type: ApplicationFiled: August 21, 2014Publication date: December 11, 2014Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20140365855Abstract: A content application includes one or more content list panels. The content application provides mechanisms that allow the user to easily manage article representations included in the content lists such as adding article representations a content list and editing the items directly in menus associated with the content lists.Type: ApplicationFiled: June 6, 2014Publication date: December 11, 2014Inventors: Kevin W. Decker, Darin Benjamin Adler, Steven J. Falkenburg, Raymond Sepulveda, Craig Federighi, Steve O. Lemay, Patrick Coffman, Andreas Wendker, Brian Croll, Chan Karunamuni, Conrad Shultz
-
Publication number: 20140365794Abstract: The embodiments disclosed herein describe ways that a browser application or other process can reduce power usage by a computing device. Methods include the process suspending one or more plug-ins on a web page by replacing them with a snapshot taken from the plug-in, and reducing processing on non-media plug-ins and non-visible portions of web pages running in the browser, but not currently in focus, such as when a tab is in the background behind a different tab, when a browser window is minimized, or when the web page is entirely or partially occluded.Type: ApplicationFiled: June 6, 2014Publication date: December 11, 2014Inventors: Kevin W. Decker, Dean Jackson, Gavin Barraclough, Jon Lee, Craig Federighi, Maciej Stachowiak
-
Patent number: 8875117Abstract: A system for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted. In one or more embodiments, a default policy may be utilized that provides for the synchronization of local objects whenever a client issues a request from the remote server.Type: GrantFiled: July 24, 2012Date of Patent: October 28, 2014Assignee: Apple Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 8429126Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: GrantFiled: November 19, 2010Date of Patent: April 23, 2013Assignee: Apple Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Publication number: 20120317310Abstract: A system for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted. In one or more embodiments, a default policy may be utilized that provides for the synchronization of local objects whenever a client issues a request from the remote server.Type: ApplicationFiled: July 24, 2012Publication date: December 13, 2012Applicant: APPLE INC.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 8307292Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: GrantFiled: September 8, 2009Date of Patent: November 6, 2012Assignee: Apple Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Patent number: 8255895Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: GrantFiled: March 31, 2011Date of Patent: August 28, 2012Assignee: Apple Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20120185762Abstract: Saveless documents are disclosed. According to some implementations, a method can include displaying a current version of a document in a first user interface of a computing device, receiving an indication to display previously saved versions of the document, and, in response to receiving the indication, displaying a second user interface having the current version displayed in a first portion of the second user interface and a particular previous version of the document displayed in a sequence of previous versions of the document in a second portion of the second user interface. Methods can include automatically saving documents and creating versions of documents. A method can include automatically restoring the layout of documents on a display. A computer-readable medium and system for performing the methods are also disclosed.Type: ApplicationFiled: June 30, 2011Publication date: July 19, 2012Applicant: APPLE INC.Inventors: Ali T. Ozer, Mark Andrew Piccirelli, Craig Federighi, Anthony Stephan Parker, Kevin Scott Perry
-
Publication number: 20120185933Abstract: In one embodiment, a data processing system includes a guest account that is configured to assist in the protection and recovery of the data processing system when it is lost or stolen. In one embodiment, the guest account can allow Internet access and can include a web browser to allow the guest, who might be a thief, to use the system to browse the Internet. While such use occurs, the system can perform actions specified by an authorized user of the system, and such actions can include determining a location of the system and transmitting the location to the authorized user, erasing data on the system, displaying a message, capturing an image, etc.Type: ApplicationFiled: April 20, 2011Publication date: July 19, 2012Inventors: Andrew T. Belk, Steve S. Ko, Jack R. Matthew, William E. Stevenson, Craig Federighi, Patrick L. Coffman
-
Publication number: 20120084689Abstract: User interface changes related to moving items in a user interface are disclosed. An operation (e.g., a drag operation) can be initiated on selected items by moving a cursor or pointing device in the user interface, and an animation can be presented illustrating representations of the selected items moving from their respective original locations toward a current location of the cursor or pointing device and forming a cluster in proximity to the current location of the cursor or pointing device. As the cluster of items is moved over a container object in the user interface, the representations of the items can adopt the appearance style defined by that container object. The representations of the items can also be shown to depart from the cluster and move toward anticipated locations of the items in the container object as a preview of a drop operation into the container object.Type: ApplicationFiled: September 30, 2010Publication date: April 5, 2012Inventors: Raleigh Joseph Ledet, Jeffrey Traer Bernstein, B. Michael Victor, Avi E. Cieplinksi, Kristin Forster, Craig Federighi
-
Publication number: 20110179192Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: March 31, 2011Publication date: July 21, 2011Applicant: APPLE INC.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Publication number: 20110119683Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: ApplicationFiled: November 19, 2010Publication date: May 19, 2011Applicant: NeXT Software, Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Patent number: 7941796Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: GrantFiled: August 11, 2009Date of Patent: May 10, 2011Assignee: Apple Inc.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 7860831Abstract: The present invention comprises a novel system for managing changes to a graph of data bearing objects. In one embodiment, an object graph manager object referred to as an editing context is used to identify changes made to data bearing enterprise objects and to notify other interested objects when changes occur. As a result, data bearing objects need not themselves contain code necessary for monitoring changes. In another embodiment of the invention, the editing context is used to provide event-based “undo” capabilities. In another embodiment of the invention, each enterprise object has a primary key that is used to maintain the identification between an enterprise object instance and a corresponding database row. In another embodiment of the invention, multiple levels of editing contexts are used to provide multiple isolated object graphs, each of which allows independent manipulation of the underlying data bearing objects.Type: GrantFiled: May 1, 2006Date of Patent: December 28, 2010Assignee: NeXT Software, Inc.Inventors: Craig Federighi, Dan Willhite, Eric Noyau
-
Publication number: 20100037154Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: ApplicationFiled: September 8, 2009Publication date: February 11, 2010Applicant: Apple Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Publication number: 20090300221Abstract: A method and apparatus for distributing and synchronizing objects. One or more embodiments of the invention provide for distributing copies of the objects locally. By copying objects (including the data and behavior for the object) into local address space, the object's methods may be executed locally thereby avoiding excessive network traffic. The state of the various object copies across a network may not be synchronized due to local changes and modifications. To synchronize the objects, one or more embodiments of the invention provide for the use of a policy that specifies conditions as to when objects are synchronized. Embodiments of the invention provide flexibility in setting the policy to accommodate varying applications. For example, a policy may provide for synchronization that is based temporally (e.g., every 10 minutes or daily at 10:00 P.M.). Alternatively, a policy may provide for synchronization based on the type or number of messages transmitted.Type: ApplicationFiled: August 11, 2009Publication date: December 3, 2009Applicant: APPLE INC.Inventors: Patrick Gates, Craig Federighi, Eric Noyau
-
Patent number: 7607095Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: GrantFiled: July 31, 2006Date of Patent: October 20, 2009Assignee: Apple Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi
-
Patent number: 7584430Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.Type: GrantFiled: July 18, 2006Date of Patent: September 1, 2009Assignee: Apple Inc.Inventors: Paul Marcos, Arnaud Weber, Avie Tevanian, Rebecca Eades Willrich, Stefanie Herzer, Craig Federighi