Asynchronous Execution of Tasks for a GUI
    1.
    发明申请
    Asynchronous Execution of Tasks for a GUI 审中-公开
    异步执行GUI任务

    公开(公告)号:US20150339033A1

    公开(公告)日:2015-11-26

    申请号:US14284304

    申请日:2014-05-21

    Applicant: Facebook, Inc.

    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.

    Abstract translation: 特定实施例提供使用多线程方法异步执行指令以外包低级输入/输出处理任务。 特定实施例可以使用(1)主线程来处理指令的执行以生成表示GUI的层的层次,其中每个层表示GUI的组件的逻辑分组,(2)处理指令的异步执行的输入线程 基于与GUI的交互来处理用户输入,以及(3)图形线程,用于处理异步执行指令以相对于GUI层级的一个或多个层生成和/或更新显示输出。 输入线程可以将关于接收到的输入的信息直接发送到图形线程和主线程,从而使得图形线程在主线程执行用户输入的任何必要处理时开始刷新显示输出。

    DISPLAY OBJECT PRE-GENERATION
    2.
    发明申请
    DISPLAY OBJECT PRE-GENERATION 有权
    显示对象预测

    公开(公告)号:US20140310713A1

    公开(公告)日:2014-10-16

    申请号:US13861303

    申请日:2013-04-11

    Applicant: Facebook, Inc.

    Abstract: 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.

    Abstract translation: 在一个实施例中,计算设备识别要预先生成的显示对象的一部分。 该设备可以监视线程以识别下一个即将到来的空闲时间窗口(即,当线程将空闲最短时间段的下一个机会)。 设备可以将一个或多个所选择的预生成任务添加到消息队列中,以在窗口期间由线程执行。 设备可以通过用内容布局的一部分的内容预生成显示对象的至少一个选定元素,然后返回显示对象来执行消息队列中的一个或多个所选择的前代生成任务。

    Display Object Pre-Generation
    3.
    发明申请
    Display Object Pre-Generation 审中-公开
    显示对象预生成

    公开(公告)号:US20160078602A1

    公开(公告)日:2016-03-17

    申请号:US14949669

    申请日:2015-11-23

    Applicant: Facebook, Inc.

    Abstract: 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.

    Abstract translation: 在一个实施例中,计算设备识别要预先生成的显示对象的一部分。 该设备可以监视线程以识别下一个即将到来的空闲时间窗口(即,当线程将空闲最短时间段的下一个机会)。 设备可以将一个或多个所选择的预生成任务添加到消息队列中,以在窗口期间由线程执行。 设备可以通过用内容布局的一部分的内容预生成显示对象的至少一个选定元素,然后返回显示对象来执行消息队列中的一个或多个所选择的前代生成任务。

    DENOISING TOUCH GESTURE INPUT
    4.
    发明申请

    公开(公告)号:US20160011772A1

    公开(公告)日:2016-01-14

    申请号:US14861833

    申请日:2015-09-22

    Applicant: Facebook, Inc.

    CPC classification number: G06F3/0418 G06F3/04842 G06F3/0485 G06F3/04883

    Abstract: 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.

    Abstract translation: 在一个实施例中,计算设备确定计算设备的触摸屏上的触摸手势。 触摸手势包括两个或更多个数据点,每个数据点对应于触摸屏上的特定位置和特定的时间点。 对于一个或多个数据点中的每一个,计算设备调整表示其特定时间点的时间值。 对于一个或多个数据点中的每一个,计算装置调整表示其在触摸屏上的特定位置的位置值。 计算设备将曲线拟合到两个或多个数据点,以确定与触摸手势相关联的用户意图。

    Method and system of display object pre-generation on windows of idle time available after each frame buffer fill tasks

    公开(公告)号:US10896484B2

    公开(公告)日:2021-01-19

    申请号:US15793309

    申请日:2017-10-25

    Applicant: Facebook, Inc.

    Abstract: 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.

    Asynchronous execution of animation tasks for a GUI

    公开(公告)号:US10261982B2

    公开(公告)日:2019-04-16

    申请号:US15430193

    申请日:2017-02-10

    Applicant: Facebook, Inc.

    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.

    Application-tailored object re-use and recycling

    公开(公告)号:US10210590B2

    公开(公告)日:2019-02-19

    申请号:US15654956

    申请日:2017-07-20

    Applicant: Facebook, Inc.

    Abstract: 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.

    Infinite bi-directional scrolling

    公开(公告)号:US10712925B2

    公开(公告)日:2020-07-14

    申请号:US15940491

    申请日:2018-03-29

    Applicant: Facebook, Inc.

    Abstract: 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.

Patent Agency Ranking