Patents by Inventor Robert Douglas Arnold

Robert Douglas Arnold 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).

  • Patent number: 10261982
    Abstract: Particular embodiments of a computing device may provide a main thread, a graphics thread to handle tasks related to rendering and presenting a graphical user interface (GUI), and an input thread to handle tasks related to processing input-related events. The GUI may comprise at least one animated component associated with a set of state variables. The main thread may handle tasks to generate a GUI hierarchy and provide copies of the GUI hierarchy to the input thread and the graphics thread. The input thread may handle tasks to initialize and update the state variables and provide information about the state variables to the graphics thread. The graphics thread may then handle tasks to update the GUI by rendering a first frame of the animation based on the state variables.
    Type: Grant
    Filed: February 10, 2017
    Date of Patent: April 16, 2019
    Assignee: Facebook, Inc.
    Inventors: Robert Douglas Arnold, Denis Koroskin, Jonathan M. Kaldor
  • Patent number: 9977683
    Abstract: In one embodiment, a first thread of execution on a computing device receives a user-interface input. The first thread of execution is associated with a user interface of the computing device. The first thread of execution identifies a second thread of execution on the computing device to process the user-interface input. The second thread of execution is associated with the user interface and is de-coupled from the first thread of execution. The first thread of execution sends the user-interface input to the second thread of execution. The second thread of execution also processes the user-interface input to generate a user-interface output associated with the user-interface input.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: May 22, 2018
    Assignee: Facebook, Inc.
    Inventor: Robert Douglas Arnold
  • Publication number: 20170154014
    Abstract: Particular embodiments of a computing device may provide a main thread, a graphics thread to handle tasks related to rendering and presenting a graphical user interface (GUI), and an input thread to handle tasks related to processing input-related events. The GUI may comprise at least one animated component associated with a set of state variables. The main thread may handle tasks to generate a GUI hierarchy and provide copies of the GUI hierarchy to the input thread and the graphics thread. The input thread may handle tasks to initialize and update the state variables and provide information about the state variables to the graphics thread. The graphics thread may then handle tasks to update the GUI by rendering a first frame of the animation based on the state variables.
    Type: Application
    Filed: February 10, 2017
    Publication date: June 1, 2017
    Inventors: Robert Douglas Arnold, Denis Koroskin
  • Patent number: 9569062
    Abstract: Particular embodiments of a computing device may provide a main thread, a graphics thread to handle tasks related to rendering and presenting a graphical user interface (GUI), and an input thread to handle tasks related to processing input-related events. The GUI may comprise at least one animated component associated with a set of state variables. The main thread may handle tasks to generate a GUI hierarchy and provide copies of the GUI hierarchy to the input thread and the graphics thread. The input thread may handle tasks to initialize and update the state variables and provide information about the state variables to the graphics thread. The graphics thread may then handle tasks to update the GUI by rendering a first frame of the animation based on the state variables.
    Type: Grant
    Filed: December 16, 2014
    Date of Patent: February 14, 2017
    Assignee: Facebook, Inc.
    Inventors: Robert Douglas Arnold, Denis Koroskin
  • Patent number: 9274766
    Abstract: In one embodiment, a computing device renders as a first frame of a video a graphical user interface (GUI) of a software application on the computing device based on a multi-layered-tree representation of the GUI. The computing device modifies the multi-layered-tree representation of the GUI in response to an input or output associated with the GUI. The computing device also renders as a second frame of the video of the GUI based on the multi-layered-tree representation of the GUI as modified.
    Type: Grant
    Filed: December 14, 2012
    Date of Patent: March 1, 2016
    Assignee: Facebook, Inc.
    Inventor: Robert Douglas Arnold
  • Publication number: 20150339006
    Abstract: Particular embodiments of a computing device include a main thread, a graphics thread, and an input thread. The main thread may execute instructions to generate an object representation of a GUI for an application. Copies of the object representation may be provided to the graphics thread and the input thread. The main thread may determine which displayable sections to render based on user input information, a current location with respect to the GUI, and a caching pattern. The caching pattern may include a first section and one or more second sections adjacent to the first section in one or more directions. The main thread may render the those displayable sections and cache some of the sections. The graphics thread may then asynchronously execute instructions to draw one of the rendered sections into a frame buffer.
    Type: Application
    Filed: February 13, 2015
    Publication date: November 26, 2015
    Inventors: Christophe Chaland, Jonathan M. Kaldor, Robert Douglas Arnold
  • Publication number: 20150339033
    Abstract: Particular embodiments provide for asynchronous execution of instructions using a multi-threaded approach to outsource low-level input/output-handling tasks. Particular embodiments may use (1) a main thread to handle execution of instructions to generate a hierarchy of layers representing a GUI, wherein each layer represents a logical grouping of components of the GUI, (2) an input thread to handle asynchronous execution of instructions to process user input based on interactions with the GUI, and (3) a graphics thread to handle asynchronous execution of instructions to generate and/or update display output in relation to one or more layers of the GUI hierarchy. The input thread may send information about received input directly to the graphics thread and the main thread at the same time, thereby enabling the graphics thread to begin refreshing the display output while the main thread performs any necessary processing of the user input.
    Type: Application
    Filed: May 21, 2014
    Publication date: November 26, 2015
    Applicant: Facebook, Inc.
    Inventors: Robert Douglas Arnold, Jonathan M. Kaldor, Denis Koroskin
  • Publication number: 20150339002
    Abstract: Particular embodiments of a computing device may provide a main thread, a graphics thread to handle tasks related to rendering and presenting a graphical user interface (GUI), and an input thread to handle tasks related to processing input-related events. The GUI may comprise at least one animated component associated with a set of state variables. The main thread may handle tasks to generate a GUI hierarchy and provide copies of the GUI hierarchy to the input thread and the graphics thread. The input thread may handle tasks to initialize and update the state variables and provide information about the state variables to the graphics thread. The graphics thread may then handle tasks to update the GUI by rendering a first frame of the animation based on the state variables.
    Type: Application
    Filed: December 16, 2014
    Publication date: November 26, 2015
    Inventors: Robert Douglas Arnold, Denis Koroskin
  • Patent number: 9066019
    Abstract: In one embodiment, a computing device incorporating a camera receives an instruction associated with the camera to display an image generated by the camera in an area within a graphical user interface of an application running on the computing device. The computing device determines a width and a height of the area. The computing device instructs the camera to configure the image, in connection with its generation, for display in the area. And the computing device displays in the area the image as generated and configured by the camera.
    Type: Grant
    Filed: October 28, 2014
    Date of Patent: June 23, 2015
    Assignee: Facebook, Inc.
    Inventors: Daniel Reed Weatherford, Robert Douglas Arnold, David Harry Garcia
  • Publication number: 20150042842
    Abstract: In one embodiment, a computing device incorporating a camera receives an instruction associated with the camera to display an image generated by the camera in an area within a graphical user interface of an application running on the computing device. The computing device determines a width and a height of the area. The computing device instructs the camera to configure the image, in connection with its generation, for display in the area. And the computing device displays in the area the image as generated and configured by the camera.
    Type: Application
    Filed: October 28, 2014
    Publication date: February 12, 2015
    Inventors: Daniel Reed Weatherford, Robert Douglas Arnold, David Harry Garcia
  • Patent number: 8902325
    Abstract: In one embodiment, a computing device incorporating a camera receives an instruction associated with the camera to display an image generated by the camera in an area within a graphical user interface of an application running on the computing device. The computing device determines a width and a height of the area. The computing device instructs the camera to configure the image, in connection with its generation, for display in the area. And the computing device displays in the area the image as generated and configured by the camera.
    Type: Grant
    Filed: October 19, 2012
    Date of Patent: December 2, 2014
    Assignee: Facebook, Inc.
    Inventors: Daniel Reed Weatherford, Robert Douglas Arnold, David Harry Garcia
  • Publication number: 20140173434
    Abstract: In one embodiment, a computing device renders as a first frame of a video a graphical user interface (GUI) of a software application on the computing device based on a multi-layered-tree representation of the GUI. The computing device modifies the multi-layered-tree representation of the GUI in response to an input or output associated with the GUI. The computing device also renders as a second frame of the video of the GUI based on the multi-layered-tree representation of the GUI as modified.
    Type: Application
    Filed: December 14, 2012
    Publication date: June 19, 2014
    Inventor: Robert Douglas Arnold
  • Publication number: 20140173435
    Abstract: In one embodiment, a first thread of execution on a computing device receives a user-interface input. The first thread of execution is associated with a user interface of the computing device. The first thread of execution identifies a second thread of execution on the computing device to process the user-interface input. The second thread of execution is associated with the user interface and is de-coupled from the first thread of execution. The first thread of execution sends the user-interface input to the second thread of execution. The second thread of execution also processes the user-interface input to generate a user-interface output associated with the user-interface input.
    Type: Application
    Filed: December 14, 2012
    Publication date: June 19, 2014
    Inventor: Robert Douglas Arnold
  • Publication number: 20140111657
    Abstract: In one embodiment, a computing device incorporating a camera receives an instruction associated with the camera to display an image generated by the camera in an area within a graphical user interface of an application running on the computing device. The computing device determines a width and a height of the area. The computing device instructs the camera to configure the image, in connection with its generation, for display in the area. And the computing device displays in the area the image as generated and configured by the camera.
    Type: Application
    Filed: October 19, 2012
    Publication date: April 24, 2014
    Inventors: Daniel Reed Weatherford, Robert Douglas Arnold, David Harry Garcia
  • Publication number: 20130055072
    Abstract: In one embodiment, a computer program executed by a main processor of a computing device renders a web page in a graphical user interface by generating a plurality of render object data structures for the web page, generating a raster image for each of the plurality of render object data structures, and creating a separate thread configured to be executed by a graphics processor of the computing device to composite the raster images into one image to be displayed in the graphical user interface.
    Type: Application
    Filed: August 24, 2011
    Publication date: February 28, 2013
    Inventors: Robert Douglas Arnold, Shaheen Ashok Gandhi