Patent application number | Description | Published |
20080301560 | Retaining Style Information when Copying Content - An illustrative implementation is described for copying an identified portion of source content along with style information associated with the portion. The implementation allows the identified portion to be pasted into target content. By virtue of the extraction and retention of style information, the identified portion that is pasted into the target content visually resembles the identified portion as it appears in the source content. The implementation can identify relevant style information to be preserved based on a contextual analysis of style information applied to the source content. In one illustrative case, some of the style information may be revealed by parts of the content that are not directly demarcated by the identified portion. | 12-04-2008 |
20110107200 | Retaining Style Information when Copying Content - An illustrative implementation is described for copying an identified portion of source content along with style information associated with the portion. The implementation allows the identified portion to be pasted into target content. By virtue of the extraction and retention of style information, the identified portion that is pasted into the target content visually resembles the identified portion as it appears in the source content. The implementation can identify relevant style information to be preserved based on a contextual analysis of style information applied to the source content. In one illustrative case, some of the style information may be revealed by parts of the content that are not directly demarcated by the identified portion. | 05-05-2011 |
20130042255 | Memory Model for a Layout Engine and Scripting Engine - Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine. | 02-14-2013 |
20130047064 | Interface Definition Language Extensions - Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine. | 02-21-2013 |
20130047258 | Security Model for a Layout Engine and Scripting Engine - Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine. | 02-21-2013 |
20130067314 | Batch Document Formatting and Layout on Display Refresh - In one or more embodiments, processing efficiencies are gained within the web browser by utilizing the display refresh notifications to drive layout processing within a web browser's layout pipeline. By doing so, the browser can ensure that layout computation is performed when the computed layout is actually to be displayed by the computing device. This can enable the web browser to defer and batch numerous changes into a single layout update, thereby reducing overall CPU utilization while maintaining user responsiveness. | 03-14-2013 |
20130067320 | Batch Document Formatting and Layout on Display Refresh - In one or more embodiments, processing efficiencies are gained within the web browser by utilizing the display refresh notifications to drive layout processing within a web browser's layout pipeline. By doing so, the browser can ensure that layout computation is performed when the computed layout is actually to be displayed by the computing device. This can enable the web browser to defer and batch numerous changes into a single layout update, thereby reducing overall CPU utilization while maintaining user responsiveness. | 03-14-2013 |
20130176344 | Input Pointer Delay and Zoom Logic - Various embodiments enable repetitive gestures, such as multiple serial gestures, to be implemented efficiently so as to enhance the user experience. Other embodiments provide various approaches to zoom operations that consider a particular element's contextual surroundings in making a zoom decision that is designed to enhance the user experience and provide efficiently-zoomed content given a device's or rendering container's form factor. | 07-11-2013 |
20130179598 | Supporting Different Event Models using a Single Input Source - In at least some embodiments, input provided by a single source generates events representing multiple source types through a mapping process, e.g. a touch input generates both touch and mouse events. By configuring the system to not recognize certain gestures, messages associated with the events of the different source types are then interleaved and provided to an associated application for processing. Efficiencies are gained by configuring the system to interleave the messages associated with the source types because messages of one source type can be processed sooner than if the messages of the one source type were queued up and sent in a non-interleaved fashion. | 07-11-2013 |
20130179776 | Enabling Performant Cascading Operations - Various embodiments enable performant cascading operations to be performed by selectively applying a subset of cascading operations to designated elements in a hierarchical tree, responsive to receiving an input associated with one of the elements. A full set of cascading operations can be performed, subsequent to performing the subset of cascading operations, in accordance with various parameters. Such parameters can include, by way of example and not limitation, user interaction timing, the complexities of the cascading operations for a given element, and/or the number of elements to which the cascading operations can be applied, to name just a few. | 07-11-2013 |
20130179844 | Input Pointer Delay - Various embodiments enable repetitive gestures, such as multiple serial gestures, to be implemented efficiently so as to enhance the user experience. In at least some embodiments, a first gesture associated with an object is detected. The first gesture is associated with a first action. Responsive to detecting the first gesture, pre-processing associated with the first action is performed in the background. Responsive to detecting a second gesture associated with the object within a pre-defined time period, an action associated with the second gesture is performed. Responsive to the second gesture not being performed within the pre-defined time period, processing associated with the first action is completed. | 07-11-2013 |
20130201107 | Simulating Input Types - A timer is utilized in an input simulation process that simulates an input of one type when an input of a different type is received. In at least some embodiments, when a first type of input is received, a corresponding timer is started. If, before passage of an associated time period, a first input scenario is present, then one or more actions associated with the first input type are performed. If, on the other hand, after passage of the associated time period, a second input scenario is present, then one or more actions associated with a second input type are performed by using the first input type to simulate the second input type. | 08-08-2013 |
20130263029 | Instantiable Gesture Objects - Instantiable gesture object techniques are described in which native gesture functionality is abstracted to applications using a script-based recognition interface. Gesture objects may be instantiated for different interaction contexts at the direction of applications programmed using dynamic scripting languages. Gesture objects can be configured to designate particular touch contacts and/or other inputs to consider for gesture recognition and a target element of content to which corresponding recognized gestures are applicable. After creation, gesture objects manage gesture processing operations on behalf of the applications including creating recognizers with the native gesture system, feeding input data for processing, and transforming raw gesture data into formats appropriate for the application and/or a target element. Accordingly, script-based applications may use the gesture objects to offload processing tasks associated with gesture recognition and take advantage of native gesture functionality. | 10-03-2013 |
20130298010 | Retaining Style Information when Copying Content - An illustrative implementation is described for copying an identified portion of source content along with style information associated with the portion. The implementation allows the identified portion to be pasted into target content. By virtue of the extraction and retention of style information, the identified portion that is pasted into the target content visually resembles the identified portion as it appears in the source content. The implementation can identify relevant style information to be preserved based on a contextual analysis of style information applied to the source content. In one illustrative case, some of the style information may be revealed by parts of the content that are not directly demarcated by the identified portion. | 11-07-2013 |
20140019844 | Declarative Style Rules for Default Touch Behaviors - In at least some embodiments, a mechanism is provided for web developers to request specific default behaviors, such as touch behaviors, on their webpages. In at least some implementations, a Cascading Style Sheets (CSS) rule is utilized to enable or disable manipulations such as panning, pinch zoom, and double-tap-zoom manipulations. The mechanism can be extensible to accommodate additional default behaviors that are added in the future. In various embodiments, the behaviors are declared upfront and thus differ from solutions which employ an imperative model. The declarative nature of this approach allows achievement of full independence from the main thread and deciding the correct response using independent hit testing. | 01-16-2014 |
20140365862 | Memory Model for a Layout Engine and Scripting Engine - Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine. | 12-11-2014 |
20140375657 | Synchronization Points for State Information - Techniques for synchronization points for state information are described. In at least some embodiments, synchronization points are employed to propagate state information among different processing threads. A synchronization point, for example, can be employed to propagate state information among different independently-executing threads. Accordingly, in at least some embodiments, synchronization points serve as inter-thread communications among different independently-executing threads. | 12-25-2014 |
20150058924 | Security Model for a Layout Engine and Scripting Engine - Various embodiments provide an interface between a Web browser's layout engine and a scripting engine. The interface enables objects from the layout engine to be recognized by a memory manager in the scripting engine and interact in a streamlined, efficient manner. In accordance with one or more embodiments, the interface allows browser layout engine objects to be created as objects that are native to the scripting engine. Alternately or additionally, in some embodiments, the native objects are further configured to proxy functionality between the layout engine and the scripting engine. | 02-26-2015 |