Patents by Inventor Jonathan M. Kaldor
Jonathan M. Kaldor 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: 10896484Abstract: In one embodiment, a computing device determines a window of time that is available after each operation to fill a frame buffer. The device determines a first number indicating a number of elements of a requested content that fit into a display region, an increment based on an application-specific rule, and a second number indicating a number of elements to pre-generate based on the first number and the increment. The device selects one or more pre-generation tasks for pre-generating content for the second number of select elements of the requested content. During the window of time, the device executes at least a subset of the pre-generation tasks to pre-generate content for a corresponding subset of the select elements. The pre-generated subset of the select elements is stored in an application-tailored recycler.Type: GrantFiled: October 25, 2017Date of Patent: January 19, 2021Assignee: Facebook, Inc.Inventor: Jonathan M. Kaldor
-
Patent number: 10712925Abstract: In one embodiment, a computing device determines a size of a view port of a graphical user interface based on a scrolling frame rate, processing resources, or memory resources of the computing device. One or more content objects are displayed in the view port. A scroll region for the user to scroll within is determined and the scroll region is independent of the boundaries of the displayed content objects. A first touch gesture across one or more boundaries of the displayed content objects is received. A velocity of the first touch gesture motion is determined. When the velocity is less than or equal to a threshold velocity, the computing device scrolls to an adjacent content object of the current displayed content object. When the velocity is higher than the threshold velocity, the computing device scrolls to advance multiple content objects with respect to the current displayed content object.Type: GrantFiled: March 29, 2018Date of Patent: July 14, 2020Assignee: Facebook, Inc.Inventors: Jasper Reid Hauser, Jasleen Singh, Jonathan M. Kaldor, William S. Bailey, Vladimir Kolesnikov
-
Patent number: 10452199Abstract: In one embodiment, a method includes determining a touch gesture that includes two or more data points that each correspond to a particular location on a touch screen and a particular point in time or a particular location; adjusting, for each of one or more of the data points, a time or a position value representing its particular point in time or location with respect to other ones of the data points; and based on the adjusted values, determining a user intent associated with the touch gesture.Type: GrantFiled: May 18, 2017Date of Patent: October 22, 2019Assignee: Facebook, Inc.Inventor: Jonathan M. Kaldor
-
Patent number: 10354363Abstract: In one embodiment, a computing device identifies a portion of a display object to pre-generate. The device may monitor a thread to identify the next upcoming window of idle time (i.e., the next opportunity when the thread will be idle for a minimum period of time). The device may add one or more selected pre-generation tasks to a message queue for execution by the thread during the window. The device may execute the one or more selected pre-generation tasks in the message queue by pre-generating at least one selected element of a display object with content for a portion of the content layout, and then return the display object.Type: GrantFiled: November 23, 2015Date of Patent: July 16, 2019Assignee: Facebook, Inc.Inventor: Jonathan M. Kaldor
-
Patent number: 10261982Abstract: 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: GrantFiled: February 10, 2017Date of Patent: April 16, 2019Assignee: Facebook, Inc.Inventors: Robert Douglas Arnold, Denis Koroskin, Jonathan M. Kaldor
-
Patent number: 10210590Abstract: In one embodiment, a computing device receives receive a request for particular content associated with an application. The device may determine, based on a first recycling policy associated with a first recycler, that the first recycler associated with the application includes a display object that is capable of being used for containing the particular content. The device may encapsulate the display object with the particular content in a wrapper object and return the wrapper object encapsulating the display object in response to the request. The device may receive an indication that the display object is no longer needed, and extract the display object from the wrapper object. The display object may be stored in the first recycler. The wrapper object without the display object may be disposed in accordance with a second recycling policy associated with a second recycler associated with an operating system of the computing device.Type: GrantFiled: July 20, 2017Date of Patent: February 19, 2019Assignee: Facebook, Inc.Inventors: Qixing Du, Ashwin Bhat, Jonathan M. Kaldor, I Chien Peng, Joshua Li, Kang Zhang
-
Patent number: 10191643Abstract: In one embodiment, a method includes providing for display to a user content including multiple content objects that each has a boundary defining a two-dimensional area. A two-dimensional scroll region for user scrolling within the content is determined. The two-dimensional scroll region is independent of the two-dimensional areas of the content objects. User input to scroll within the content in one or both of the two dimensions across one or more of the boundaries is received. The method includes scrolling within the content according to the user input, the scrolling being continuous across the boundaries.Type: GrantFiled: November 29, 2012Date of Patent: January 29, 2019Assignee: Facebook, Inc.Inventors: Jasper Reid Hauser, Jasleen Singh, Jonathan M. Kaldor, William S. Bailey, Vladimir Kolesnikov
-
Publication number: 20180217730Abstract: In one embodiment, a computing device determines a size of a view port of a graphical user interface based on a scrolling frame rate, processing resources, or memory resources of the computing device. One or more content objects are displayed in the view port. A scroll region for the user to scroll within is determined and the scroll region is independent of the boundaries of the displayed content objects. A first touch gesture across one or more boundaries of the displayed content objects is received. A velocity of the first touch gesture motion is determined. When the velocity is less than or equal to a threshold velocity, the computing device scrolls to an adjacent content object of the current displayed content object. When the velocity is higher than the threshold velocity, the computing device scrolls to advance multiple content objects with respect to the current displayed content object.Type: ApplicationFiled: March 29, 2018Publication date: August 2, 2018Inventors: Jasper Reid Hauser, Jasleen Singh, Jonathan M. Kaldor, William S. Bailey, Vladimir Kolesnikov
-
Patent number: 9965162Abstract: In one embodiment, a method includes providing for display to a user content including multiple content objects that each has a boundary defining a two-dimensional area. A two-dimensional scroll region for user scrolling within the content is determined. The two-dimensional scroll region is independent of the two-dimensional areas of the content objects. User input to scroll within the content in one or both of the two dimensions across one or more of the boundaries is received. The method includes scrolling within the content according to the user input, the scrolling being continuous across the boundaries.Type: GrantFiled: November 29, 2012Date of Patent: May 8, 2018Assignee: Facebook, Inc.Inventors: Jasper Reid Hauser, Jasleen Singh, Jonathan M. Kaldor, William S. Bailey, Vladimir Kolesnikov
-
Publication number: 20180047136Abstract: In one embodiment, a computing device determines a window of time that is available after each operation to fill a frame buffer. The device determines a first number indicating a number of elements of a requested content that fit into a display region, an increment based on an application-specific rule, and a second number indicating a number of elements to pre-generate based on the first number and the increment. The device selects one or more pre-generation tasks for pre-generating content for the second number of select elements of the requested content. During the window of time, the device executes at least a subset of the pre-generation tasks to pre-generate content for a corresponding subset of the select elements. The pre-generated subset of the select elements is stored in an application-tailored recycler.Type: ApplicationFiled: October 25, 2017Publication date: February 15, 2018Inventor: Jonathan M. Kaldor
-
Patent number: 9858647Abstract: In one embodiment, a computing device identifies a portion of a display object to pre-generate. The device may monitor a thread to identify the next upcoming window of idle time (i.e., the next opportunity when the thread will be idle for a minimum period of time). The device may add one or more selected pre-generation tasks to a message queue for execution by the thread during the window. The device may execute the one or more selected pre-generation tasks in the message queue by pre-generating at least one selected element of a display object with content for a portion of the content layout, and then return the display object.Type: GrantFiled: November 23, 2015Date of Patent: January 2, 2018Assignee: Facebook, Inc.Inventor: Jonathan M. Kaldor
-
Publication number: 20170316539Abstract: In one embodiment, a computing device receives receive a request for particular content associated with an application. The device may determine, based on a first recycling policy associated with a first recycler, that the first recycler associated with the application includes a display object that is capable of being used for containing the particular content. The device may encapsulate the display object with the particular content in a wrapper object and return the wrapper object encapsulating the display object in response to the request. The device may receive an indication that the display object is no longer needed, and extract the display object from the wrapper object. The display object may be stored in the first recycler. The wrapper object without the display object may be disposed in accordance with a second recycling policy associated with a second recycler associated with an operating system of the computing device.Type: ApplicationFiled: July 20, 2017Publication date: November 2, 2017Inventors: Qixing Du, Ashwin Bhat, Jonathan M. Kaldor, I Chien Peng, Joshua Li, Kang Zhang
-
Patent number: 9760964Abstract: A computing device receives a request for content for a content layout in a displayable region of a screen associated with the device. The device determines, based on application-tailored recycling policies, whether a recycler includes a display object that is suitable for recycling or re-use. If it does not, the device creates the display object and fills it with the content. If it does, and if the display object contains the content, the device updates elements of the display object as needed; otherwise, if the display object does not contain the content, the device fills the display object with the content and returns it. The recycling or re-using may also be performed with sub-elements of a display object, some of which may comprise nested display objects.Type: GrantFiled: April 11, 2013Date of Patent: September 12, 2017Assignee: Facebook, Inc.Inventors: Qixing Du, Ashwin Bhat, Jonathan M. Kaldor, I Chien Peng, Joshua Li, Kang Zhang
-
Publication number: 20170255334Abstract: In one embodiment, a method includes determining a touch gesture that includes two or more data points that each correspond to a particular location on a touch screen and a particular point in time or a particular location; adjusting, for each of one or more of the data points, a time or a position value representing its particular point in time or location with respect to other ones of the data points; and based on the adjusted values, determining a user intent associated with the touch gesture.Type: ApplicationFiled: May 18, 2017Publication date: September 7, 2017Inventor: Jonathan M. Kaldor
-
Patent number: 9696850Abstract: In one embodiment, a computing device determines a touch gesture on a touch screen of the computing device. The touch gesture includes two or more data points that each correspond to a particular location on the touch screen and a particular point in time. For each of one or more of the data points, the computing device adjusts a time value representing its particular point in time. For each of one or more of the data points, the computing device adjusts a position value representing its particular location on the touch screen. The computing device fits a curve to the two or more data points to determine a user intent associated with the touch gesture.Type: GrantFiled: September 22, 2015Date of Patent: July 4, 2017Assignee: Facebook, Inc.Inventor: Jonathan M. Kaldor
-
Publication number: 20160078602Abstract: In one embodiment, a computing device identifies a portion of a display object to pre-generate. The device may monitor a thread to identify the next upcoming window of idle time (i.e., the next opportunity when the thread will be idle for a minimum period of time). The device may add one or more selected pre-generation tasks to a message queue for execution by the thread during the window. The device may execute the one or more selected pre-generation tasks in the message queue by pre-generating at least one selected element of a display object with content for a portion of the content layout, and then return the display object.Type: ApplicationFiled: November 23, 2015Publication date: March 17, 2016Inventor: Jonathan M. Kaldor
-
Publication number: 20160026336Abstract: In one embodiment, a computing device determines a touch gesture on a touch screen of the computing device. The touch gesture includes two or more data points that each correspond to a particular location on the touch screen and a particular point in time. For each of one or more of the data points, the computing device adjusts a time value representing its particular point in time. For each of one or more of the data points, the computing device adjusts a position value representing its particular location on the touch screen. The computing device fits a curve to the two or more data points to determine a user intent associated with the touch gesture.Type: ApplicationFiled: October 7, 2015Publication date: January 28, 2016Inventor: Jonathan M. Kaldor
-
Publication number: 20160011772Abstract: In one embodiment, a computing device determines a touch gesture on a touch screen of the computing device. The touch gesture includes two or more data points that each correspond to a particular location on the touch screen and a particular point in time. For each of one or more of the data points, the computing device adjusts a time value representing its particular point in time. For each of one or more of the data points, the computing device adjusts a position value representing its particular location on the touch screen. The computing device fits a curve to the two or more data points to determine a user intent associated with the touch gesture.Type: ApplicationFiled: September 22, 2015Publication date: January 14, 2016Inventor: Jonathan M. Kaldor
-
Patent number: 9207986Abstract: In one embodiment, a computing device identifies a portion of a display object to pre-generate. The device may monitor a thread to identify the next upcoming window of idle time (i.e., the next opportunity when the thread will be idle for a minimum period of time). The device may add one or more selected pre-generation tasks to a message queue for execution by the thread during the window. The device may execute the one or more selected pre-generation tasks in the message queue by pre-generating at least one selected element of a display object with content for a portion of the content layout, and then return the display object.Type: GrantFiled: April 11, 2013Date of Patent: December 8, 2015Assignee: Facebook, Inc.Inventor: Jonathan M. Kaldor
-
Publication number: 20150339033Abstract: 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: ApplicationFiled: May 21, 2014Publication date: November 26, 2015Applicant: Facebook, Inc.Inventors: Robert Douglas Arnold, Jonathan M. Kaldor, Denis Koroskin