Tile cache

Information

  • Patent Grant
  • 8922575
  • Patent Number
    8,922,575
  • Date Filed
    Friday, September 9, 2011
    13 years ago
  • Date Issued
    Tuesday, December 30, 2014
    10 years ago
Abstract
Tile cache techniques are described. In at least some embodiments, a tile cache is maintained that stores tile content for a plurality of tiles. The tile content is ordered in the tile cache to match a visual order of tiles in a graphical user interface. When tiles are moved (e.g., panned and/or scrolled) in the graphical user interface, tile content can be retrieved from the tile cache and displayed.
Description
BACKGROUND

Today's computing device user has access to a wide variety of content. Much of this content is “rich content”, in that it consists of a combination of different types of content, including images, text, audio, video, animations, and so on. There are a number of challenges associated with enabling a user to navigate through such rich content, such as allocating device resources that are utilized during the navigation.


For example, as a user visually navigates through content, additional content is presented to the user as part of the navigation experience. Presenting the additional content to the user typically involves retrieving the additional content from some type of storage, converting the additional content into a form that can be displayed, and then displaying the additional content to the user. This process can consume significant resources and if resources are not sufficient, the quality of the navigation experience can be diminished.


SUMMARY

This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.


Tile cache techniques are described. In at least some embodiments, a tile cache is maintained that stores tile content for a plurality of tiles. The tile content is ordered in the tile cache to match a visual order of tiles in a graphical user interface. When tiles are moved through the graphical user interface, tile content can be retrieved from the tile cache and displayed.


In implementations, a misordering event can cause tile content in the tile cache to become misordered with respect to the visual order of tiles. Thus, a reordering operation can be implemented to cause the tile content to be reordered to match the visual order of tiles.


In implementations, a determination is made whether to retrieve animation content for a tile based on a velocity of the tile in a graphical user interface. For example, if the velocity of the tile falls below a threshold velocity, animation content can be retrieved for the tile. If the velocity of the tile stays above the threshold velocity, static tile content can be displayed as part of the tile.





BRIEF DESCRIPTION OF THE DRAWINGS

The detailed description is described with reference to the accompanying figures. In the figures, the left-most digit(s) of a reference number identifies the figure in which the reference number first appears. The use of the same reference numbers in different instances in the description and the figures may indicate similar or identical items.



FIG. 1 is an illustration of an environment in an example implementation in accordance with one or more embodiments.



FIG. 2 is an illustration of a system in an example implementation showing FIG. 1 in greater detail.



FIG. 3 illustrates an example tile caching scenario in accordance with one or more embodiments.



FIG. 4 is a flow diagram that describes steps in a method in accordance with one or more embodiments.



FIG. 5 is a flow diagram that describes steps in a method in accordance with one or more embodiments.



FIG. 6 is a flow diagram that describes steps in a method in accordance with one or more embodiments.



FIG. 7 is an illustration of an environment in an example implementation in accordance with one or more embodiments.



FIG. 8 is a flow diagram that describes steps in a method in accordance with one or more embodiments.



FIG. 9 is a flow diagram that describes steps in a method in accordance with one or more embodiments.



FIG. 10 illustrates an example computing device that can be utilized to implement various embodiments described herein.





DETAILED DESCRIPTION

Overview


Tile cache techniques are described. In at least some embodiments, a tile cache is maintained that stores tile content for a plurality of tiles. The tile content can include a rendered version of a complete tile visual, e.g., as the tile appears when it is displayed. The tile content is ordered in the tile cache to match a visual order of tiles in a graphical user interface. When tiles are moved through the graphical user interface (e.g., via panning and/or scrolling), tile content can be retrieved from the tile cache and displayed.


In implementations, a misordering event can cause tile content in the tile cache to become misordered with respect to the visual order of tiles. For example, when an application associated with a tile is installed or uninstalled, adding or deleting the tile can cause tile content in the cache to be misordered. Thus, a reordering operation can be implemented to cause the tile content to be reordered to match the visual order of tiles.


In implementations, a determination is made whether to retrieve animation content for a tile based on a velocity of the tile in a graphical user interface. Velocity of the tile can refer to a speed of panning and/or scrolling of the tile through the graphical user interface. For example, if the velocity of the tile stays above a threshold velocity, static tile content can be retrieved and displayed for the tile. If the velocity of the tile falls below the threshold velocity, however, animation content can be retrieved for the tile.


In the following discussion, an example environment is first described that is operable to employ tile cache techniques described herein. Next, an example system is described that is operable to employ tile cache techniques described herein. Following this, a section entitled “Example Tile Caching Scenarios” describes several tile caching scenarios in accordance with one or more embodiments. Next, a section entitled “Animation Tile Content” describes implementations in which animation content may be used for tiles. Following this, a section entitled “Tile Slot Sizing” describes example embodiments in which tile slots in a tile cache can be resized. Finally, a section entitled “Example Device” describes an example device that can be utilized to implement one more embodiments discussed herein.


Example Environment



FIG. 1 is an illustration of an environment 100 in an example implementation that is operable to employ tile cache techniques as described herein. The illustrated environment 100 includes an example of a computing device 102 that may be configured in a variety of ways. For example, the computing device 102 may be configured as a traditional computer (e.g., a desktop personal computer, laptop computer, and so on), a mobile station, an entertainment appliance, a set-top box communicatively coupled to a television, a wireless phone, a netbook, a game console, a handheld device, and so forth as further described in relation to FIGS. 2 and 10. Thus, the computing device 102 may range from full resource devices with substantial memory and processor resources (e.g., personal computers, game consoles) to a low-resource device with limited memory and/or processing resources (e.g., traditional set-top boxes, hand-held game consoles). The computing device 102 also includes software that causes the computing device 102 to perform one or more operations as described below.


Computing device 102 includes a user interface module 104 that is representative of functionality to generate and manage various types of user interfaces for the computing device 102, such as a graphical user interface 106. Displayed on the graphical user interface 106 are tiles 108. In implementations, the tiles 108 are graphical representations of various applications, processes, content, and so on, that are accessible via the computing device 102.


In embodiments, each of the tiles 108 is selectable to invoke an associated functionality. For example, a particular tile can be selected to cause an application associated with the tile to be launched. Further, another tile can be selected to navigate to content and/or a collection of content, such as images, video, audio, and so on.


While the tiles 108 are selectable to access various functionalities and/or content, the tiles themselves may include a variety of content. For example, a particular tile may include an image along with text, video, audio, animation content, and/or other type of content. Thus, individual tiles of the tiles 108 may be differentiated from others of the tiles 108 by a particular collection of content that is presented within and/or originates from the tile.


In implementations, the tiles 108 can be manipulated in various directions with respect to the graphical user interface 106 via user input to the computing device 102. For example, the tiles 108 can be panned left and right, scrolled up and down, and/or any combination thereof. In response to such manipulation, the collection of tiles presented as part of the tiles 108 can change. For example, panning the tiles 108 to the right of the graphical user interface 106 can cause some of the tiles 108 to exit the graphical user interface to the right and different tiles to pan into the graphical user interface from the left, and vice versa. Thus, the tiles 108 can represent a subset of a larger collection of tiles that are available to be presented via the graphical user interface 106.


Further illustrated as part of the computing device 102 is a tile manager module 110 that is representative of functionality to manage various aspects of the tiles 108, along with other techniques discussed herein. For example, the tile manager module 110 is configured to manage a tile cache 112, which represents a data storage component of the computing device 102 that is configured to store tile content for the tiles 108.


The computing device 102 additionally includes a primary memory 114 that is representative of memory that is accessible to various components of the computing device 102 to perform tasks. Examples of the primary memory 114 include random access memory (RAM), dynamic RAM (DRAM), static RAM (SRAM), and so on. Included as part of the primary memory 114 is a standby list 116, which is representative of functionality to store tile content that is retrieved from the tile cache 112 and/or displayed on the graphical user interface 106. In implementations, the standby list 116 can function as a data holding area for tile data that has recently been displayed. Further aspects of the tile manager module 110, the tile cache 112, the primary memory 114, and the standby list 116 are discussed below.



FIG. 2 illustrates an example system showing the computing device 102 as being implemented in an environment where multiple devices are interconnected through a central computing device. The central computing device may be local to the multiple devices or may be located remotely from the multiple devices. In one embodiment, the central computing device is a “cloud” server farm, which comprises one or more server computers that are connected to the multiple devices through a network or the Internet or other means.


In one embodiment, this interconnection architecture enables functionality to be delivered across multiple devices to provide a common and seamless experience to the user of the multiple devices. Each of the multiple devices may have different physical requirements and capabilities, and the central computing device uses a platform to enable the delivery of an experience to the device that is both tailored to the device and yet common to all devices. In one embodiment, a “class” of target device is created and experiences are tailored to the generic class of devices. A class of device may be defined by physical features or usage or other common characteristics of the devices. For example, as previously described the computing device 102 may be configured in a variety of different ways, such as for mobile 202, computer 204, and television 206 uses. Each of these configurations has a generally corresponding screen size and thus the computing device 102 may be configured as one of these device classes in this example system 200. For instance, the computing device 102 may assume the mobile 202 class of device which includes mobile telephones, music players, game devices, and so on.


The computing device 102 may also assume a computer 204 class of device that includes personal computers, laptop computers, netbooks, and so on. The television 206 configuration includes configurations of device that involve display in a casual environment, e.g., televisions, set-top boxes, game consoles, and so on. Thus, techniques described herein may be supported by these various configurations of the computing device 102 and are not limited to the specific examples described in the following sections.


Cloud 208 is illustrated as including a platform 210 for web services 212. The platform 210 abstracts underlying functionality of hardware (e.g., servers) and software resources of the cloud 208 and thus may act as a “cloud operating system.” For example, the platform 210 may abstract resources to connect the computing device 102 with other computing devices. The platform 210 may also serve to abstract scaling of resources to provide a corresponding level of scale to encountered demand for the web services 212 that are implemented via the platform 210. A variety of other examples are also contemplated, such as load balancing of servers in a server farm, protection against malicious parties (e.g., spam, viruses, and other malware), and so on.


Thus, the cloud 208 is included as a part of the strategy that pertains to software and hardware resources that are made available to the computing device 102 via the Internet or other networks. For example, tile cache techniques discussed herein may be implemented in part on the computing device 102 as well as via a platform 210 that supports web services 212.


In implementations, input to the computing device 102 and/or the graphical user interface 106 may be detected using touchscreen functionality in the mobile configuration 202, track pad functionality of the computer 204 configuration, detected by a camera as part of support of a natural user interface (NUI) that does not involve contact with a specific input device, and so on. Further, performance of the operations to implement techniques discussed herein may be distributed throughout the system 200, such as by the computing device 102 and/or the web services 212 supported by the platform 210 of the cloud 208.


Generally, any of the functions described herein can be implemented using software, firmware, hardware (e.g., fixed logic circuitry), manual processing, or a combination of these implementations. The terms “module,” “functionality,” and “logic” as used herein generally represent software, firmware, hardware, or a combination thereof. In the case of a software implementation, the module, functionality, or logic represents program code that performs specified tasks when executed on or by a processor (e.g., CPU or CPUs). The program code can be stored in one or more computer readable memory devices. The features of the tile cache techniques described below are platform-independent, meaning that the techniques may be implemented on a variety of commercial computing platforms having a variety of processors.


Discussed below are a number of methods that may be implemented to perform techniques discussed herein. Aspects of the methods may be implemented in hardware, firmware, or software, or a combination thereof. The methods are shown as a set of blocks that specify operations performed by one or more devices and are not necessarily limited to the orders shown for performing the operations by the respective blocks. Further, an operation shown with respect to a particular method may be combined and/or interchanged with an operation of a different method in accordance with one or more implementations.


Example Tile Caching Scenarios


The following section discusses several tile caching scenarios in accordance with one or more embodiments. Aspects of the tile caching scenarios may be implemented via components and/or functionalities of the example environment 100, system 200, and/or device 1000.



FIG. 3 illustrates an example tile caching scenario 300, in accordance with one or more embodiments. Included as part of the tile caching scenario 300 is a detailed view of the tile cache 112. The tile cache 112 includes tile slots 302, which are representative of locations in the tile cache 112 that store tile content for the tiles 108 as well as other tiles. Thus, in implementations each of the tiles 108 has a corresponding tile slot in the tile slots 302 that can be accessed to retrieve content for the tile.


To enable tile content to be retrieved more efficiently, the tile slots 302 are arranged in the tile cache 112 in an order that corresponds to a visual order of corresponding tiles in the graphical user interface 106. Thus, as a user navigates through tiles in the graphical user interface 106, tile content for tiles that are to be displayed can be retrieved in a contiguous group. In implementations this can conserve resources by enabling tile content for a group of tiles to be retrieved via a single storage access operation, as opposed to accessing multiple non-contiguous locations throughout the cache to retrieve tile content.


The tile cache 112 further includes a cache header 304, which includes information about the tile cache 112. For example, the cache header 304 includes an index with tile slot entries that associate each of the tiles 108 with a particular one of the tile slots 302, as well as a location in the tile cache 112 (e.g., an address) for each of the tile slots 302. The cache header 304 can also include other information about the tile slots 304, such as an association between particular applications and particular tile slots, a disk size for individual tile slots, and so on.


As mentioned above, the tiles 108 can be manipulated (e.g., panned and/or scrolled) in various directions with respect to the graphical user interface 106 to navigate among a larger collection of tiles. Further to such embodiments, a user manipulation of the tiles 108 towards the right edge of the graphical user interface 106 is illustrated. As the manipulation proceeds to the right, a group of outgoing tiles 306 leaves the graphical user interface 106 at the right edge and a group of incoming tiles 308 enters the graphical user interface from the left edge. Thus, the user manipulation causes tiles to move into and out of the graphical user interface 106 such that the collection of tiles displayed as part of the tiles 108 changes.


Further to the tile cache scenario 300, when it is detected that the tiles 108 are being manipulated such that the incoming tiles 308 will be displayed, tile content for the incoming tiles 308 is retrieved from the tile cache 112. For example, the cache header 304 is queried (e.g., by the tile manager module 110) to determine which of the cache slots 302 correspond to the incoming tiles 308. Tile content is then retrieved from the corresponding tile slots and made available to be displayed in the graphical user interface 106. In implementations, the tile content can be retrieved from the tile slots and placed in the primary memory 114. The user interface module 104 can then retrieve the tile content from the primary memory 114 and display the tile content in the graphical user interface 106 as part of the incoming tiles 308.



FIG. 4 is a flow diagram that describes steps in a method in accordance with one or more embodiments. Step 400 initially receives tile content for a tile. For example, the tile content can be received as part of an application installation, as part of a download, responsive to a user selection of tile content, and so on. Step 402 decodes and visually renders the tile content. For instance, the tile content can be in an encoded form, such as a compressed image, a compressed video, and so on. Thus, encoded tile content can be decoded and visually rendered by a computing device.


In implementations, the encoded tile content may originate from an untrusted source, e.g., a source that is unknown to the computing device 102. Thus, the encoded tile content can be decoded and/or rendered by a process that is external to the user interface module 104 and tile manager module 110 to prevent sensitive functionalities of the computing device 102 from potentially being exposed to unsafe content.


Step 404 builds a cache file that includes a tile slot for each of the tiles and a cache header that references each of the tile slots. For example, the tile slots are arranged in the tile cache in an order that corresponds to a visual order of the tiles as displayed in a graphical user interface. The cache header can include an entry for each tile slot, and each entry can include a pointer that associates a respective tile with the tile slot to enable the tile content to be retrieved for the tile. Step 406 stores visually rendered versions of tile content for each tile in a respective tile slot. For example, the tile manager module 110 can cause a rendered version of an entire tile visual (e.g., as the tile appears when displayed) to be stored in a tile slot of the tile cache 112. The rendered version of the tile visual can include a bitmap or other version of the tile that can be retrieved from a tile slot and displayed without further decoding, rendering, or formatting. Step 408 retrieves for display visually rendered versions of incoming tiles from respective tile slots.


Thus, implementations enable a tile visual for a tile to be decoded and rendered once, e.g., as discussed above with reference to steps 400 and 402. The tile visual is then stored in the tile cache. For subsequent operations that display the tile visual (e.g., in response to tile movement in a user interface), the tile visual is retrieved from the tile cache and displayed without requiring additional decoding or processing of the tile visual.



FIG. 5 is a flow diagram that describes steps in a method in accordance with one or more embodiments. Step 500 detects tile movement. For example, the tile manager module 110 can detect that the tiles 108 are panning and/or scrolling in the graphical user interface 106, e.g., in response to user manipulation of the tiles. Step 502 indicates that primary memory being used for tile content for outgoing tiles is available for other tasks. For example, the tile manager module 110 can communicate to an operating system of the computing device 102 that tile content for the outgoing tiles 306 can be pushed onto the standby list 116. This can enable memory resources of the computing device 102 to be conserved by quickly repurposing primary memory that is not being used by an active task.


Step 504 ascertains whether tile content for incoming tiles is available in primary memory. For example, some or all of the tile content may have been previously retrieved from the tile cache 112 and placed in the standby list 116. If the tile content is not available in memory (“No”), step 506 retrieves the tile content for the incoming tiles from a cache to the primary memory. For instance, the tile manager module 110 can retrieve the tile content from the tile cache 112 and place the tile content in the primary memory 114. In implementations, prior to retrieving the tile content from the tile cache, the tile manager module 110 can pass placeholder content to the user interface module 104. The placeholder content can be displayed in one or more of the incoming tiles until the tile content for the tiles is retrieved from the tile cache and placed in primary memory for access by the user interface module 104.


Step 508 causes the tile content to be presented as part of the incoming tiles. In implementations, the tile manager module 110 can inform the user interface module 104 that the tile content is ready to be retrieved from the primary memory 114 and displayed. Returning to step 504, if the tile content is available in memory (“Yes”), the method proceeds to step 508 which causes the tile content to be presented as part of the incoming tiles. In implementations, the tile manager module 110 can determine that the tile content is available in the standby list 116 (e.g., the tile content was recently displayed and was pushed onto the standby list), and can inform the user interface module 104 that the tile content is ready to be retrieved from the standby list and displayed.



FIG. 6 is a flow diagram that describes steps in a method in accordance with one or more embodiments. In implementations, the method is a detailed implementation of step 506 of FIG. 5, discussed above. Step 600 determines a cache location for tile slots. For example, the tile manager module 110 can inspect the cache header 304 to determine where in the tile cache 112 tile slots for the incoming tiles 308 is located. Step 602 ascertains whether the tile slot order matches the visual order of the tiles. For example, the tile manager module 110 can ascertain whether the tile slots that store the tile content for the tiles 108 are arranged to correspond to a visual order of the tiles 108 in the graphical user interface 106.


If the tile slot order corresponds to the visual order of the tiles (“Yes”), step 604 retrieves the tile content from the cache according to the visual order. For example, the tile slots can be accessed serially in an order that corresponds to the visual order of the tiles in a graphical user interface. The retrieved tile content can be stored in memory that is accessible by the user interface module 104, e.g., in the primary memory 114.


In implementations, individual storage access operations can retrieve tile content from the tile cache 112 in large sections of content (e.g., approximately 1 megabyte) to reduce the number of storage access operations used to retrieve the tile content. Thus, maintaining tile content in ordered contiguous sections enables the large storage access operations to efficiently retrieve tile content to reduce resource usage.


Returning the step 602, if the tile slot order does not correspond to the visual order of the tiles (“No”), step 606 retrieves the tile content from the misordered tile slots. In implementations, tile slots can be misordered when a misordering event causes an order of tile slots to not correspond to a visual order of associated tiles. Examples of a misordering event include an installation or uninstallation of an application and its associated tile, a visual rearrangement of tiles by a user, and so on. Since the misordering can cause the tile slots to be located multiple non-contiguous sections of the tile cache 112, multiple storage access operations may be implemented to access the non-contiguous sections and retrieve the tile content.


Step 608 causes the tile slots to be reordered when the system is idle. For example, the tile manager module 110 can ascertain that the order of tile slots in the tile cache 112 does not correspond to a visual order of tiles in the graphical user interface 106. In response, the tile manager module can schedule a cache reorder operation to be implemented when the system (e.g., the computing device 102) is idle. When the tile manager module 110 receives an indication that the system is idle, the tile manager module can rearrange the tile slots in the tile cache 112 such that the order to tile slots corresponds to a visual order of tiles in the graphical user interface 106. In implementations, reordering the tile slots can cause the tile slots to be located in contiguous portions of the tile cache such that the tile slots can be accessed with fewer storage access operations than would be used for non-contiguous portions.


As an example of a cache reordering scenario, consider an example environment 700 in accordance with one or more embodiments. Illustrated in the upper portion of the environment 700 is the graphical user interface 106 which displays a group of tiles 702, 704, 706, 708, 710, 712, and 714. Also illustrated in the upper portion is the tile cache 112 which includes tile slots for various tiles, including the tiles 702, 704, 706, 708, 710, 712, and 714. As indicated in the upper portion, the tile slots that correspond to tiles 702, 704, 706, 708, 710, 712, and 714 are contiguous to one another in the tile cache 112. Thus, in implementations the tile slots that correspond to tiles 702, 704, 706, 708, 710, 712, and 714 can be accessed to retrieve tile content from the tile slots via a single storage access operation.


Proceeding from the upper portion to the center of environment 100, the tile 714 has been removed and a tile 716 has been added to the graphical user interface 106. A variety of different events can cause the tile 714 to be removed and/or the tile 716 to be added. For example, an application associated with the tile 714 can be uninstalled, which causes the tile 714 to be removed and the displayed tiles to be rearranged such that the tile 716 is displayed. As a further example, a user can cause the tiles to be rearranged by specifying a different tile arrangement order. Still further, an application associated with the tile 716 can be installed, which causes the tile 714 to be displaced by the tile 716 in the graphical user interface 106.


As further indicated in the center portion of the environment 100, the tile slots that correspond to the tiles displayed in the graphical user interface 106 are not contiguous to one another in the tile cache 112, e.g., the tile slots for tiles 702, 704, 706, 708, 710, 712, and 716. In implementations, when such misordering occurs between visual tiles and tile slots, the tile header 304 can be edited to reflect the mapping between displayed tiles and corresponding tile slots. Thus, after a tile misorder event, the correct tile content can still be retrieved from the tile cache 112 for the displayed tiles. Since the corresponding tile slots are not contiguous, however, multiple storage access operations may be implemented to retrieve tile content for the tiles. For example, a first storage access operation can access tile slots 702, 704, 706, 708, 710, and 712, and a second storage access operation can access slot 716.


Since a cache reordering process can consume significant processing and/or memory resources, however, the cache reordering process may not be immediately initiated. As mentioned above, the tile manager module 112 may wait until an indication that the computing device 102 is idle (e.g., a user is not interacting with the device) to initiate the cache reordering process. This can avoid burdening device resources to an extent that may cause deterioration of a user experience, such as undesirable interruptions in tile panning and/or scrolling, slowing of tile content retrieval, and so on. Additionally, multiple misordering events can occur during a particular user interaction with a device. Thus, delaying a reordering process until the device is idle can account for the multiple misordering events with a single reorder operation.


Continuing on to the bottom portion of the environment 700, the tile slots in the tile cache 112 have been reordered (e.g., by the tile manager module 110 during device idle time) to reflect the visual order of tiles in the graphical user interface 106. For example, the tile slots have been reordered such that the tile slot for tile 716 is contiguous with the tile slots 702, 704, 706, 708, 710, and 712. Thus, in implementations the tile content for the tiles displayed in the bottom portion can be retrieved with a single storage access operation to the tile cache 112.


Animation Tile Content


Among the various types of tile content that can be used to populate a tile is animation content. For example, when a tile is manipulated into view, the tile can exhibit animated content. Instances of animation content include fluctuating tile size (e.g., a tile can appear to “pop out” from a user interface), content fly-in and/or fly-out from a tile, image and/or text movement within a tile, and so on.


While enabling tiles to display animated content can provide for a more diverse user experience, presenting such animated content can cause increased resource usage as compared to static tile content. Thus, techniques are described for on-demand retrieval of tile animation content. Such techniques can conserve device resources by presenting a static version of a tile during movement and retrieving animation content for the tile when tile movement is paused or stopped with the tile in view.



FIG. 8 is a flow diagram that describes steps in a method in accordance with one or more embodiments. Step 800 detects that a tile is moving into view. For example, the tile manager module 110 can detect that a tile is panning and/or scrolling into view in the graphical user interface 106. Step 802 retrieves static tile content for the tile. Example ways of retrieving tile content are discussed above.


Step 804 ascertains whether a tile velocity has fallen below a threshold velocity. A tile velocity can refer to how quickly tiles are moving through a graphical user interface, such as measured with reference to tile movement from one edge of the graphical user interface to another edge. In implementations, a user can pan quickly through multiple tiles, and thus a particular tile can move into and out of a user interface without falling below the threshold velocity. If the user pauses or stops panning while the tile is in view, however, the tile velocity can fall below the threshold velocity.


If the tile velocity does not fall below the threshold velocity (“No”), step 806 presents the static tile content in the tile. If the tile velocity does fall below the threshold velocity (“Yes”), step 808 retrieves animation content for the tile. In implementations, a tile slot for the tile in the tile cache 112 can store the static tile content as well as the animation content. Alternatively or additionally, the animation content can be stored elsewhere on the computing device 102 and/or at a resource that is remote from the computing device 102. Step 810 presents the animation content in the tile.


Alternatively or in addition to the method discussed above, a timer can be employed to determine when animation content for a tile is to be retrieved. For example, when a tile stops moving and/or falls below the threshold velocity discussed above while it is displayed, the timer can be triggered. If the timer elapses before the tile begins moving again, animation content can be retrieved for the tile.


Tile Slot Sizing


Since different tiles can be associated with different types and combinations of tile content, the data storage size of tile slots in the tile cache 112 can vary between different tile slots. For example, a tile slot for a tile that only includes text can be smaller (e.g., use less data storage) than a tile slot for a different tile that includes both text and images. Additionally, the collection of content associated with a tile can be dynamic. For example, new tile content can be added to an established collection of tile content. Thus, the tile cache 112 is dynamic in that a tile slot can be resized to accommodate new and/or edited tile content.



FIG. 9 is a flow diagram that describes steps in a method in accordance with one or more embodiments. Step 900 detects that new content for a tile is received that exceeds available storage in an existing tile slot for the tile. In implementations, new content can include replacement tile content, content that is additional to existing tile content, and/or a new version of existing tile content.


Step 902 stores the new content in a new tile slot in available cache storage. In implementations, the new tile slot can be created at a different location in the tile cache than the existing tile slot. For example, the new tile slot can be created at the end of the tile cache 112, e.g., after the last tile slot in the tile cache. In addition to the new content, relevant existing content from the existing tile slot can be propagated to the new tile slot. Thus, relevant existing content can include existing tile content that hasn't been replaced by the new content. Step 904 maps the tile to the new tile slot. For example, a mapping between the visual ordering of the tile and the new tile slot can be noted in the cache header 304 such that the new tile slot can be accessed to retrieve tile content for the tile.


Step 906 reorders the cache to incorporate the new tile slot such that tile slot order matches visual order of tiles. For example, an idle time reorder operation can be scheduled and performed, as discussed in more detail above.


Having described tile slot resizing techniques, consider now an example device that can be utilized to implement one more embodiments described above.


Example Device



FIG. 10 illustrates various components of an example device 1000 that can be implemented as any type of portable and/or computer device as described with reference to FIGS. 1 and 2 to implement embodiments of the tile cache techniques described herein. Device 1000 includes communication devices 1002 that enable wired and/or wireless communication of device data 1004 (e.g., received data, data that is being received, data scheduled for broadcast, data packets of the data, etc.). The device data 1004 or other device content can include configuration settings of the device, media content stored on the device, and/or information associated with a user of the device. Media content stored on device 1000 can include any type of audio, video, and/or image data. Device 1000 includes one or more data inputs 1006 via which any type of data, media content, and/or inputs can be received, such as user-selectable inputs, messages, music, television media content, recorded video content, and any other type of audio, video, and/or image data received from any content and/or data source.


Device 1000 also includes communication interfaces 1008 that can be implemented as any one or more of a serial and/or parallel interface, a wireless interface, any type of network interface, a modem, and as any other type of communication interface. The communication interfaces 1008 provide a connection and/or communication links between device 1000 and a communication network by which other electronic, computing, and communication devices communicate data with device 1000.


Device 1000 includes one or more processors 1010 (e.g., any of microprocessors, controllers, and the like) which process various computer-executable or readable instructions to control the operation of device 1000 and to implement the gesture embodiments described above. Alternatively or in addition, device 1000 can be implemented with any one or combination of hardware, firmware, or fixed logic circuitry that is implemented in connection with processing and control circuits which are generally identified at 1012. Although not shown, device 1000 can include a system bus or data transfer system that couples the various components within the device. A system bus can include any one or combination of different bus structures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and/or a processor or local bus that utilizes any of a variety of bus architectures.


Device 1000 also includes computer-readable media 1014, such as one or more memory components, examples of which include random access memory (RAM), non-volatile memory (e.g., any one or more of a read-only memory (ROM), flash memory, EPROM, EEPROM, etc.), and a disk storage device. A disk storage device may be implemented as any type of magnetic or optical storage device, such as a hard disk drive, a recordable and/or rewriteable compact disc (CD), any type of a digital versatile disc (DVD), and the like. Device 1000 can also include a mass storage media device 1016.


Computer-readable media 1014 provides data storage mechanisms to store the device data 1004, as well as various device applications 1018 and any other types of information and/or data related to operational aspects of device 1000. For example, an operating system 1020 can be maintained as a computer application with the computer-readable media 1014 and executed on processors 1010. The device applications 1018 can include a device manager (e.g., a control application, software application, signal processing and control module, code that is native to a particular device, a hardware abstraction layer for a particular device, etc.), as well as other applications that can include, web browsers, image processing applications, communication applications such as instant messaging applications, word processing applications and a variety of other different applications. The device applications 1018 also include any system components or modules to implement embodiments of the tile cache techniques described herein.


In this example, the device applications 1018 include an interface application 1022 and a gesture-capture driver 1024 that are shown as software modules and/or computer applications. The gesture-capture driver 1024 is representative of software that is used to provide an interface with a device configured to capture a gesture, such as a touchscreen, track pad, camera, and so on. Alternatively or in addition, the interface application 1022 and the gesture-capture driver 1024 can be implemented as hardware, software, firmware, or any combination thereof.


Device 1000 also includes an audio and/or video input-output system 1026 that provides audio data to an audio system 1028 and/or provides video data to a display system 1030. The audio system 1028 and/or the display system 1030 can include any devices that process, display, and/or otherwise render audio, video, and image data. Video signals and audio signals can be communicated from device 1000 to an audio device and/or to a display device via an RF (radio frequency) link, S-video link, composite video link, component video link, DVI (digital video interface), analog audio connection, or other similar communication link. In an embodiment, the audio system 1028 and/or the display system 1030 are implemented as external components to device 1000. Alternatively, the audio system 1028 and/or the display system 1030 are implemented as integrated components of example device 1000.


CONCLUSION

Tile cache techniques are described. In at least some embodiments, a tile cache is maintained that stores tile content for a plurality of tiles. The tile content is ordered in the tile cache to match a visual order of tiles in a graphical user interface. When tiles are moved through the graphical user interface, tile content can be retrieved from the tile cache and displayed.


In implementations, a misordering event can cause tile content in the tile cache to become misordered with respect to the visual order of tiles. Thus, a reordering operation can be implemented to cause the tile content to be reordered to match the visual order of tiles.


In implementations, a determination is made whether to retrieve animation content for a tile based on a velocity of the tile in a graphical user interface. For example, if the velocity of the tile falls below a threshold velocity, animation content can be retrieved for the tile. If the velocity of the tile stays above the threshold velocity, static tile content can be displayed as part of the tile.


Although the embodiments have been described in language specific to structural features and/or methodological acts, it is to be understood that the embodiments defined in the appended claims are not necessarily limited to the specific features or acts described. Rather, the specific features and acts are disclosed as example forms of implementing the claimed embodiments.

Claims
  • 1. A method comprising: building a tile cache that includes tile slots for a plurality of tiles;storing visually rendered versions of the plurality of tiles in respective tile slots such that an order in which the rendered versions of the plurality of tiles are stored in the tile slots in the tile cache corresponds to a visual order of the tiles in a graphical user interface; andresponsive to detecting tile movement, retrieving for display one or more visually rendered versions of one or more incoming tiles of the plurality of tiles from one or more respective tile slots in the tile cache.
  • 2. The method of claim 1, wherein one or more of the visually rendered versions comprise a bitmap image that represents a complete tile visual for at least one of the tiles.
  • 3. The method of claim 1, wherein said building further comprises generating a cache header for the tile cache that includes pointers that associate individual tiles with respective tile slots.
  • 4. The method of claim 1, wherein said retrieving comprises: ascertaining that a visually rendered version of at least one of the incoming tiles is available in primary memory; andnotifying an entity that generates the graphical user interface that the visually rendered version of the at least one of the incoming tiles is available to be retrieved from the primary memory.
  • 5. The method of claim 1, wherein said retrieving comprises inspecting a cache header for the tile cache to determine a location in the tile cache for the respective tile slots.
  • 6. The method of claim 1, wherein said tile cache is stored in computer-readable storage, and where said retrieving comprises retrieving the rendered versions via a single access operation to the computer-readable storage.
  • 7. The method of claim 1, further comprising: saving the visually rendered versions of the one or more incoming tiles to primary memory; andnotifying an entity that generates the graphical user interface that the visually rendered version of the one or more incoming tiles is available to be retrieved from the primary memory.
  • 8. The method of claim 1, further comprising, prior to said retrieving, notifying one or more functionalities of a computing device that primary memory associated with one or more outgoing tiles of the graphical user interface is available for other tasks.
  • 9. The method of claim 1, further comprising: responsive to a rendered version of a new tile being added to the tile cache, ascertaining that the tile slots in the tile cache are misordered with respect to a visual order of associated tiles; andreordering the tile cache to cause an order of the tile slots in the tile cache to correspond to a visual order of the associated tiles in the graphical user interface.
  • 10. The method of claim 9, wherein said reordering comprises scheduling a tile cache reorder operation to be performed when a computing device on which the graphical user interface is displayed is idle.
  • 11. The method of claim 1, further comprising: ascertaining for at least one of the incoming tiles that the tile movement has fallen below a threshold velocity; andresponsive to said ascertaining, retrieving animation content for the at least one of the incoming tiles.
  • 12. The method of claim 1, further comprising: receiving new content for a tile of the plurality of tiles;storing the new content in a new tile slot for the tile; andreordering the tile cache to incorporate the new tile slot such that a tile slot order matches a visual order of the tiles in the graphical user interface.
  • 13. A system comprising: one or more processors; andone or more computer readable storage media embodying computer readable instructions that are executable by the one or more processors to perform operations comprising:determining a location in a tile cache for tile slots that include content for incoming tiles of a graphical user interface;ascertaining that an order in which the tile slots are stored in the tile cache does not correspond to a visual order of the incoming tiles in the graphical user interface; andcausing the order in which the tile slots are stored in the tile cache to be reordered in the tile cache to correspond to the visual order of the incoming tiles.
  • 14. The system of claim 13, wherein said order of the tile slots does not correspond to a visual order of the incoming tiles due to a tile slot resizing for one of the incoming tiles that causes new tile content to be stored in a new tile slot for the one of the incoming tiles.
  • 15. The system of claim 13, wherein said ascertaining comprises determining that the tile slots are stored in non-contiguous portions of the tile cache, and wherein said causing comprises causing the tile slots to be stored in contiguous portions of the tile cache.
  • 16. The system of claim 13, wherein said causing comprises scheduling a tile cache reorder operation to be performed when the computing device is idle.
  • 17. A method comprising: detecting that a tile is moving into view in a graphical user interface;retrieving static tile content for the tile from a tile cache; anddetermining whether to retrieve animation content for the tile based on whether movement of the tile in the graphical user interface falls below a threshold velocity.
  • 18. The method of claim 17, further comprising retrieving the animation content for the tile responsive to a determination that the movement of the tile has fallen below the threshold velocity.
  • 19. The method of claim 18, wherein the animation content is retrieved from the tile cache.
  • 20. The method of claim 18, wherein the movement of the tile has fallen below the threshold velocity in response to a user pausing or stopping manipulation of the tile while the tile is displayed in the graphical user interface.
US Referenced Citations (755)
Number Name Date Kind
4823283 Diehm et al. Apr 1989 A
5045997 Watanabe Sep 1991 A
5046001 Barker et al. Sep 1991 A
5189732 Kondo Feb 1993 A
5258748 Jones Nov 1993 A
5297032 Trojan et al. Mar 1994 A
5321750 Nadan Jun 1994 A
5339392 Risberg et al. Aug 1994 A
5432932 Chen et al. Jul 1995 A
5463725 Henckel et al. Oct 1995 A
5485197 Hoarty Jan 1996 A
5495566 Kwatinetz Feb 1996 A
5515495 Ikemoto May 1996 A
5574836 Broemmelsiek Nov 1996 A
5598523 Fujita Jan 1997 A
5611060 Belfiore et al. Mar 1997 A
5623613 Rowe et al. Apr 1997 A
5640176 Mundt et al. Jun 1997 A
5650827 Tsumori et al. Jul 1997 A
5657049 Ludolph et al. Aug 1997 A
5675329 Barker Oct 1997 A
5687331 Volk et al. Nov 1997 A
5712995 Cohn Jan 1998 A
5771042 Santos-Gomez Jun 1998 A
5793415 Gregory et al. Aug 1998 A
5819284 Farber et al. Oct 1998 A
5844547 Minakuchi et al. Dec 1998 A
5860073 Ferrel et al. Jan 1999 A
5905492 Straub et al. May 1999 A
5914720 Maples et al. Jun 1999 A
5940076 Sommers et al. Aug 1999 A
5959621 Nawaz et al. Sep 1999 A
5963204 Ikeda et al. Oct 1999 A
6008809 Brooks Dec 1999 A
6008816 Eisler Dec 1999 A
6009519 Jones et al. Dec 1999 A
6011542 Durrani et al. Jan 2000 A
6028600 Rosin et al. Feb 2000 A
6057839 Advani et al. May 2000 A
6064383 Skelly May 2000 A
6104418 Tanaka et al. Aug 2000 A
6108003 Hall, Jr. et al. Aug 2000 A
6111585 Choi Aug 2000 A
6115040 Bladow et al. Sep 2000 A
6166736 Hugh Dec 2000 A
6188405 Czerwinski et al. Feb 2001 B1
6211921 Cherian et al. Apr 2001 B1
6212564 Harter et al. Apr 2001 B1
6216141 Straub et al. Apr 2001 B1
6266098 Cove et al. Jul 2001 B1
6278448 Brown et al. Aug 2001 B1
6281940 Sciammarella Aug 2001 B1
6311058 Wecker et al. Oct 2001 B1
6369837 Schirmer Apr 2002 B1
6385630 Ejerhed May 2002 B1
6396963 Shaffer May 2002 B2
6411307 Rosin et al. Jun 2002 B1
6424338 Andersone Jul 2002 B1
6426753 Migdal Jul 2002 B1
6433789 Rosman Aug 2002 B1
6448987 Easty et al. Sep 2002 B1
6449638 Wecker et al. Sep 2002 B1
6456334 Duhault Sep 2002 B1
6489977 Sone Dec 2002 B2
6505243 Lortz Jan 2003 B1
6507643 Groner Jan 2003 B1
6510144 Dommety et al. Jan 2003 B1
6510466 Cox et al. Jan 2003 B1
6510553 Hazra Jan 2003 B1
6538635 Ringot Mar 2003 B1
6570597 Seki et al. May 2003 B1
6577323 Jamieson et al. Jun 2003 B1
6577350 Proehl et al. Jun 2003 B1
6591244 Jim et al. Jul 2003 B2
6597374 Baker et al. Jul 2003 B1
6628309 Dodson et al. Sep 2003 B1
6636246 Gallo et al. Oct 2003 B1
6662023 Helle Dec 2003 B1
6675387 Boucher et al. Jan 2004 B1
6690387 Zimmerman et al. Feb 2004 B2
6697825 Underwood et al. Feb 2004 B1
6707449 Hinckley et al. Mar 2004 B2
6710771 Yamaguchi et al. Mar 2004 B1
6721958 Dureau Apr 2004 B1
6724403 Santoro et al. Apr 2004 B1
6784925 Tomat Aug 2004 B1
6798421 Baldwin Sep 2004 B2
6801203 Hussain Oct 2004 B1
6807558 Hassett et al. Oct 2004 B1
6832355 Duperrouzel et al. Dec 2004 B1
6857104 Cahn Feb 2005 B1
6865297 Loui Mar 2005 B2
6873329 Cohen et al. Mar 2005 B2
6876312 Yu Apr 2005 B2
6885974 Holle Apr 2005 B2
6904597 Jin Jun 2005 B2
6920445 Bae Jul 2005 B2
6938101 Hayes et al. Aug 2005 B2
6961731 Holbrook Nov 2005 B2
6971067 Karson et al. Nov 2005 B1
6972776 Davis et al. Dec 2005 B2
6975306 Hinckley Dec 2005 B2
6976210 Silva et al. Dec 2005 B1
6978303 McCreesh et al. Dec 2005 B1
6983310 Rouse Jan 2006 B2
6987991 Nelson Jan 2006 B2
7013041 Miyamoto Mar 2006 B2
7017119 Johnston et al. Mar 2006 B1
7019757 Brown et al. Mar 2006 B2
7028264 Santoro et al. Apr 2006 B2
7032187 Keely, Jr. et al. Apr 2006 B2
7036090 Nguyen Apr 2006 B1
7036091 Nguyen Apr 2006 B1
7042460 Hussain et al. May 2006 B2
7051291 Sciammarella et al. May 2006 B2
7058955 Porkka Jun 2006 B2
7065385 Jarrad et al. Jun 2006 B2
7065386 Smethers Jun 2006 B1
7075535 Aguera y Arcas Jul 2006 B2
7089507 Lection et al. Aug 2006 B2
7091998 Miller-Smith Aug 2006 B2
7093201 Duarte Aug 2006 B2
7106349 Baar et al. Sep 2006 B2
7111044 Lee Sep 2006 B2
7133707 Rak Nov 2006 B1
7133859 Wong Nov 2006 B1
7139800 Bellotti et al. Nov 2006 B2
7146573 Brown et al. Dec 2006 B2
7155729 Andrew et al. Dec 2006 B1
7158123 Myers et al. Jan 2007 B2
7158135 Santodomingo et al. Jan 2007 B2
7178111 Glein et al. Feb 2007 B2
7180527 Sakai et al. Feb 2007 B2
7194506 White et al. Mar 2007 B1
7210099 Rohrabaugh et al. Apr 2007 B2
7216588 Suess May 2007 B2
7249326 Stoakley et al. Jul 2007 B2
7262775 Calkins et al. Aug 2007 B2
7263668 Lentz Aug 2007 B1
7280097 Chen Oct 2007 B2
7283620 Adamczyk Oct 2007 B2
7289806 Morris et al. Oct 2007 B2
7296184 Derks et al. Nov 2007 B2
7296242 Agata et al. Nov 2007 B2
7310100 Hussain Dec 2007 B2
7333092 Zadesky et al. Feb 2008 B2
7333120 Venolia Feb 2008 B2
7336263 Valikangas Feb 2008 B2
7369647 Gao et al. May 2008 B2
7376907 Santoro et al. May 2008 B2
7386807 Cummins et al. Jun 2008 B2
7388578 Tao Jun 2008 B2
7403191 Sinclair Jul 2008 B2
7408538 Hinckley et al. Aug 2008 B2
7412663 Lindsay et al. Aug 2008 B2
7433920 Blagsvedt et al. Oct 2008 B2
7447520 Scott Nov 2008 B2
7461151 Colson et al. Dec 2008 B2
7469380 Wessling et al. Dec 2008 B2
7469381 Ording Dec 2008 B2
7478326 Holecek et al. Jan 2009 B2
7479949 Jobs Jan 2009 B2
7480870 Anzures Jan 2009 B2
7483418 Maurer Jan 2009 B2
7487467 Kawahara et al. Feb 2009 B1
7496830 Rubin Feb 2009 B2
7500175 Colle et al. Mar 2009 B2
7512966 Lyons, Jr. et al. Mar 2009 B2
7577918 Lindsay Aug 2009 B2
7581034 Polivy et al. Aug 2009 B2
7593995 He et al. Sep 2009 B1
7595810 Louch Sep 2009 B2
7599790 Rasmussen et al. Oct 2009 B2
7600189 Fujisawa Oct 2009 B2
7600234 Dobrowski et al. Oct 2009 B2
7606714 Williams et al. Oct 2009 B2
7607106 Ernst et al. Oct 2009 B2
7610563 Nelson et al. Oct 2009 B2
7619615 Donoghue Nov 2009 B1
7640518 Forlines et al. Dec 2009 B2
7653883 Hotelling et al. Jan 2010 B2
7657849 Chaudhri et al. Feb 2010 B2
7663607 Hotelling et al. Feb 2010 B2
7664067 Pointer Feb 2010 B2
7671756 Herz et al. Mar 2010 B2
7694221 Fortes Apr 2010 B2
7702683 Kirshenbaum Apr 2010 B1
7755674 Kaminaga Jul 2010 B2
7792925 Werner et al. Sep 2010 B1
7834861 Lee Nov 2010 B2
7844915 Platzer et al. Nov 2010 B2
7877707 Westerman et al. Jan 2011 B2
7880728 De Los Reyes et al. Feb 2011 B2
7889180 Byun et al. Feb 2011 B2
7895309 Belali et al. Feb 2011 B2
7903115 Platzer et al. Mar 2011 B2
7924271 Christie et al. Apr 2011 B2
7933632 Flynt et al. Apr 2011 B2
7962281 Rasmussen et al. Jun 2011 B2
7983718 Roka Jul 2011 B1
7987431 Santoro et al. Jul 2011 B2
8006276 Nakagawa et al. Aug 2011 B2
8086275 Wykes Dec 2011 B2
8108781 Laansoo et al. Jan 2012 B2
8131808 Aoki et al. Mar 2012 B2
8150924 Buchheit et al. Apr 2012 B2
8171431 Grossman et al. May 2012 B2
8175653 Smuga May 2012 B2
8176438 Zaman et al. May 2012 B2
8209623 Barletta et al. Jun 2012 B2
8225193 Kleinschnitz et al. Jul 2012 B1
8238876 Teng Aug 2012 B2
8245152 Brunner et al. Aug 2012 B2
8250494 Butcher Aug 2012 B2
8255473 Eren et al. Aug 2012 B2
8255812 Parparita et al. Aug 2012 B1
8269736 Wilairat Sep 2012 B2
8279241 Fong Oct 2012 B2
8307279 Fioravanti et al. Nov 2012 B1
8384726 Grabowski et al. Feb 2013 B1
8429565 Agarawala et al. Apr 2013 B2
8448083 Migos et al. May 2013 B1
8473870 Hinckley et al. Jun 2013 B2
8493510 Bryan et al. Jul 2013 B2
8525808 Buening Sep 2013 B1
8539384 Hinckley et al. Sep 2013 B2
8548431 Teng et al. Oct 2013 B2
8560959 Zaman et al. Oct 2013 B2
8589815 Fong et al. Nov 2013 B2
8612874 Zaman et al. Dec 2013 B2
8627227 Matthews et al. Jan 2014 B2
8665272 Fitzmaurice et al. Mar 2014 B2
8669950 Forstall et al. Mar 2014 B2
8687023 Markiewicz et al. Apr 2014 B2
8689123 Zaman et al. Apr 2014 B2
8706515 Cobbs et al. Apr 2014 B2
8830270 Zaman et al. Sep 2014 B2
8893033 Donahue et al. Nov 2014 B2
20010022621 Squibbs Sep 2001 A1
20020000963 Yoshida et al. Jan 2002 A1
20020018051 Singh Feb 2002 A1
20020035607 Checkoway Mar 2002 A1
20020054117 van Dantzich et al. May 2002 A1
20020060701 Naughton et al. May 2002 A1
20020070961 Xu et al. Jun 2002 A1
20020077156 Smethers Jun 2002 A1
20020091755 Narin Jul 2002 A1
20020097264 Dutta et al. Jul 2002 A1
20020105531 Niemi Aug 2002 A1
20020115476 Padawer et al. Aug 2002 A1
20020128036 Yach et al. Sep 2002 A1
20020129061 Swart et al. Sep 2002 A1
20020138248 Corston-Oliver et al. Sep 2002 A1
20020142762 Chmaytelli et al. Oct 2002 A1
20020145631 Arbab et al. Oct 2002 A1
20020149622 Uesaki et al. Oct 2002 A1
20020152305 Jackson et al. Oct 2002 A1
20020154176 Barksdale et al. Oct 2002 A1
20020161634 Kaars Oct 2002 A1
20020186251 Himmel et al. Dec 2002 A1
20020194385 Linder et al. Dec 2002 A1
20030003899 Tashiro et al. Jan 2003 A1
20030008686 Park et al. Jan 2003 A1
20030011643 Nishihihata Jan 2003 A1
20030020671 Santoro et al. Jan 2003 A1
20030040300 Bodic Feb 2003 A1
20030046396 Richter et al. Mar 2003 A1
20030073414 Capps Apr 2003 A1
20030096604 Vollandt May 2003 A1
20030105827 Tan et al. Jun 2003 A1
20030135582 Allen et al. Jul 2003 A1
20030187996 Cardina et al. Oct 2003 A1
20030222907 Heikes et al. Dec 2003 A1
20030225846 Heikes et al. Dec 2003 A1
20040066414 Czerwinski et al. Apr 2004 A1
20040068543 Seifert Apr 2004 A1
20040078299 Down-Logan Apr 2004 A1
20040111673 Bowman et al. Jun 2004 A1
20040185883 Rukman Sep 2004 A1
20040212586 Denny Oct 2004 A1
20040217954 O'Gorman et al. Nov 2004 A1
20040217980 Radburn et al. Nov 2004 A1
20040237048 Tojo et al. Nov 2004 A1
20040250217 Tojo et al. Dec 2004 A1
20040266491 Howard et al. Dec 2004 A1
20050005241 Hunleth et al. Jan 2005 A1
20050028208 Ellis Feb 2005 A1
20050044058 Matthews et al. Feb 2005 A1
20050054384 Pasquale et al. Mar 2005 A1
20050060647 Doan et al. Mar 2005 A1
20050060665 Rekimoto Mar 2005 A1
20050079896 Kokko et al. Apr 2005 A1
20050081155 Martin et al. Apr 2005 A1
20050085215 Kokko et al. Apr 2005 A1
20050085272 Anderson et al. Apr 2005 A1
20050108655 Andrea et al. May 2005 A1
20050114788 Fabritius May 2005 A1
20050120306 Klassen et al. Jun 2005 A1
20050143138 Lee et al. Jun 2005 A1
20050149879 Jobs et al. Jul 2005 A1
20050156947 Sakai et al. Jul 2005 A1
20050182798 Todd et al. Aug 2005 A1
20050183021 Allen et al. Aug 2005 A1
20050184999 Daioku Aug 2005 A1
20050198159 Kirsch Sep 2005 A1
20050198584 Matthews et al. Sep 2005 A1
20050200762 Barletta et al. Sep 2005 A1
20050216300 Appelman et al. Sep 2005 A1
20050223057 Buchheit et al. Oct 2005 A1
20050223069 Cooperman et al. Oct 2005 A1
20050232166 Nierhaus Oct 2005 A1
20050250547 Salman et al. Nov 2005 A1
20050268237 Crane et al. Dec 2005 A1
20050273614 Ahuja Dec 2005 A1
20050280719 Kim Dec 2005 A1
20060004685 Pyhalammi et al. Jan 2006 A1
20060010394 Chaudhri et al. Jan 2006 A1
20060015736 Callas et al. Jan 2006 A1
20060015812 Cunningham Jan 2006 A1
20060026013 Kraft Feb 2006 A1
20060026521 Hotelling et al. Feb 2006 A1
20060036425 Le Cocq et al. Feb 2006 A1
20060048073 Jarrett et al. Mar 2006 A1
20060048101 Krassovsky et al. Mar 2006 A1
20060059430 Bells Mar 2006 A1
20060061597 Hui Mar 2006 A1
20060070005 Gilbert et al. Mar 2006 A1
20060074735 Shukla et al. Apr 2006 A1
20060074771 Kim Apr 2006 A1
20060075360 Bixler Apr 2006 A1
20060103623 Davis May 2006 A1
20060107231 Matthews et al. May 2006 A1
20060112354 Park et al. May 2006 A1
20060129543 Bates et al. Jun 2006 A1
20060135220 Kim et al. Jun 2006 A1
20060136773 Kespohl et al. Jun 2006 A1
20060152803 Provitola Jul 2006 A1
20060156228 Gallo et al. Jul 2006 A1
20060172724 Linkert et al. Aug 2006 A1
20060173911 Levin et al. Aug 2006 A1
20060184901 Dietz Aug 2006 A1
20060190833 SanGiovanni et al. Aug 2006 A1
20060199598 Lee et al. Sep 2006 A1
20060212806 Griffin et al. Sep 2006 A1
20060218234 Deng et al. Sep 2006 A1
20060218501 Wilson et al. Sep 2006 A1
20060224993 Wong et al. Oct 2006 A1
20060236264 Cain et al. Oct 2006 A1
20060246955 Nirhamo Nov 2006 A1
20060253801 Okaro et al. Nov 2006 A1
20060259870 Hewitt et al. Nov 2006 A1
20060259873 Mister Nov 2006 A1
20060262134 Hamiter et al. Nov 2006 A1
20060268100 Karukka et al. Nov 2006 A1
20060271520 Ragan Nov 2006 A1
20060281448 Plestid et al. Dec 2006 A1
20060293088 Kokubo Dec 2006 A1
20060294063 Ali et al. Dec 2006 A1
20060294396 Witman Dec 2006 A1
20070005716 LeVasseur et al. Jan 2007 A1
20070006094 Canfield et al. Jan 2007 A1
20070011610 Sethi et al. Jan 2007 A1
20070015532 Deelman Jan 2007 A1
20070024646 Saarinen Feb 2007 A1
20070028267 Ostojic et al. Feb 2007 A1
20070035513 Sherrard et al. Feb 2007 A1
20070038567 Allaire et al. Feb 2007 A1
20070050724 Lee et al. Mar 2007 A1
20070054679 Cho et al. Mar 2007 A1
20070061488 Alagappan et al. Mar 2007 A1
20070061714 Stuple et al. Mar 2007 A1
20070063995 Bailey et al. Mar 2007 A1
20070067272 Flynt Mar 2007 A1
20070067737 Zielinski et al. Mar 2007 A1
20070073718 Ramer Mar 2007 A1
20070076013 Campbell Apr 2007 A1
20070080954 Griffin Apr 2007 A1
20070082707 Flynt et al. Apr 2007 A1
20070082708 Griffin Apr 2007 A1
20070083746 Fallon et al. Apr 2007 A1
20070083821 Garbow et al. Apr 2007 A1
20070094045 Cobbs et al. Apr 2007 A1
20070106635 Frieden et al. May 2007 A1
20070120835 Sato May 2007 A1
20070127638 Doulton Jun 2007 A1
20070157089 Van Os et al. Jul 2007 A1
20070171192 Seo et al. Jul 2007 A1
20070180381 Rice et al. Aug 2007 A1
20070182595 Ghasabian Aug 2007 A1
20070182999 Anthony et al. Aug 2007 A1
20070185847 Budzik et al. Aug 2007 A1
20070192707 Maeda et al. Aug 2007 A1
20070192730 Simila et al. Aug 2007 A1
20070192733 Horiuchi Aug 2007 A1
20070192739 Hunleth et al. Aug 2007 A1
20070197196 Shenfield et al. Aug 2007 A1
20070198420 Goldstein Aug 2007 A1
20070208840 Mcconville et al. Sep 2007 A1
20070211034 Griffin et al. Sep 2007 A1
20070214429 Lyudovyk et al. Sep 2007 A1
20070216651 Patel Sep 2007 A1
20070216661 Chen et al. Sep 2007 A1
20070225022 Satake Sep 2007 A1
20070233654 Karlson Oct 2007 A1
20070236468 Tuli Oct 2007 A1
20070238488 Scott Oct 2007 A1
20070247435 Benko et al. Oct 2007 A1
20070250583 Hardy et al. Oct 2007 A1
20070250787 Kawahara et al. Oct 2007 A1
20070253758 Suess Nov 2007 A1
20070256029 Maxwell Nov 2007 A1
20070257891 Esenther et al. Nov 2007 A1
20070257933 Klassen Nov 2007 A1
20070260674 Shenfield Nov 2007 A1
20070262964 Zotov et al. Nov 2007 A1
20070263843 Foxenland Nov 2007 A1
20070273663 Park et al. Nov 2007 A1
20070273668 Park et al. Nov 2007 A1
20070280457 Aberethy Dec 2007 A1
20070281747 Pletikosa Dec 2007 A1
20080005668 Mavinkurve Jan 2008 A1
20080028294 Sell et al. Jan 2008 A1
20080032681 West Feb 2008 A1
20080036743 Westerman Feb 2008 A1
20080040692 Sunday et al. Feb 2008 A1
20080048986 Khoo Feb 2008 A1
20080052370 Snyder Feb 2008 A1
20080057910 Thoresson et al. Mar 2008 A1
20080057926 Forstall et al. Mar 2008 A1
20080065607 Weber Mar 2008 A1
20080072173 Brunner et al. Mar 2008 A1
20080076472 Hyatt Mar 2008 A1
20080082911 Sorotokin et al. Apr 2008 A1
20080082934 Kocienda et al. Apr 2008 A1
20080085700 Arora Apr 2008 A1
20080092054 Bhumkar et al. Apr 2008 A1
20080094368 Ording et al. Apr 2008 A1
20080095100 Cleveland et al. Apr 2008 A1
20080102863 Hardy May 2008 A1
20080104544 Collins et al. May 2008 A1
20080107057 Kannan et al. May 2008 A1
20080113656 Lee et al. May 2008 A1
20080114535 Nesbitt May 2008 A1
20080122796 Jobs May 2008 A1
20080132252 Altman et al. Jun 2008 A1
20080138030 Bryan et al. Jun 2008 A1
20080141153 Samson et al. Jun 2008 A1
20080153551 Baek et al. Jun 2008 A1
20080155425 Murthy et al. Jun 2008 A1
20080162651 Madnani Jul 2008 A1
20080163104 Haug Jul 2008 A1
20080165132 Weiss Jul 2008 A1
20080165136 Christie et al. Jul 2008 A1
20080165141 Christie Jul 2008 A1
20080165163 Bathiche Jul 2008 A1
20080165210 Platzer et al. Jul 2008 A1
20080167058 Lee et al. Jul 2008 A1
20080168349 Lamiraux et al. Jul 2008 A1
20080168379 Forstall et al. Jul 2008 A1
20080168382 Louch et al. Jul 2008 A1
20080168402 Blumenberg Jul 2008 A1
20080168403 Westerman et al. Jul 2008 A1
20080172609 Rytivaara Jul 2008 A1
20080174570 Jobs et al. Jul 2008 A1
20080180399 Cheng Jul 2008 A1
20080182628 Lee et al. Jul 2008 A1
20080184112 Chiang et al. Jul 2008 A1
20080189653 Taylor et al. Aug 2008 A1
20080189658 Jeong et al. Aug 2008 A1
20080192056 Robertson et al. Aug 2008 A1
20080198141 Lee et al. Aug 2008 A1
20080200142 Abdel-Kader et al. Aug 2008 A1
20080208973 Hayashi Aug 2008 A1
20080222273 Lakshmanan et al. Sep 2008 A1
20080222545 Lemay et al. Sep 2008 A1
20080222547 Wong et al. Sep 2008 A1
20080222560 Harrison Sep 2008 A1
20080222569 Champion Sep 2008 A1
20080225014 Kim Sep 2008 A1
20080242362 Duarte Oct 2008 A1
20080259042 Thorn Oct 2008 A1
20080261513 Shin et al. Oct 2008 A1
20080261660 Huh et al. Oct 2008 A1
20080263457 Kim et al. Oct 2008 A1
20080270558 Ma Oct 2008 A1
20080297475 Woolf et al. Dec 2008 A1
20080299999 Lockhart et al. Dec 2008 A1
20080301046 Martinez Dec 2008 A1
20080301575 Fermon Dec 2008 A1
20080307351 Louch et al. Dec 2008 A1
20080309626 Westerman et al. Dec 2008 A1
20080313540 Dirks et al. Dec 2008 A1
20080316177 Tseng Dec 2008 A1
20080317240 Chang et al. Dec 2008 A1
20080320413 Oshiro Dec 2008 A1
20090007009 Luneau et al. Jan 2009 A1
20090007017 Anzures et al. Jan 2009 A1
20090012952 Fredriksson Jan 2009 A1
20090029736 Kim et al. Jan 2009 A1
20090031247 Walter et al. Jan 2009 A1
20090037469 Kirsch Feb 2009 A1
20090037846 Spalink et al. Feb 2009 A1
20090051671 Konstas Feb 2009 A1
20090061837 Chaudhri et al. Mar 2009 A1
20090061948 Lee et al. Mar 2009 A1
20090064055 Chaudhri Mar 2009 A1
20090070673 Barkan et al. Mar 2009 A1
20090077649 Lockhart Mar 2009 A1
20090079740 Fitzmaurice et al. Mar 2009 A1
20090083656 Dokhon Mar 2009 A1
20090085851 Lim Apr 2009 A1
20090085878 Heubel Apr 2009 A1
20090089215 Newton Apr 2009 A1
20090089459 Jeyaseelan et al. Apr 2009 A1
20090089704 Makela Apr 2009 A1
20090094562 Jeong et al. Apr 2009 A1
20090103515 Pointer Apr 2009 A1
20090106696 Duarte Apr 2009 A1
20090109243 Kraft Apr 2009 A1
20090117942 Boningue et al. May 2009 A1
20090125844 Weir et al. May 2009 A1
20090140061 Schultz et al. Jun 2009 A1
20090140986 Karkkainen et al. Jun 2009 A1
20090144642 Crystal Jun 2009 A1
20090144653 Ubillos Jun 2009 A1
20090144753 Morris Jun 2009 A1
20090146962 Ahonen et al. Jun 2009 A1
20090153492 Popp Jun 2009 A1
20090160809 Yang Jun 2009 A1
20090163182 Gatti et al. Jun 2009 A1
20090164888 Phan Jun 2009 A1
20090164928 Brown et al. Jun 2009 A1
20090164936 Kawaguchi Jun 2009 A1
20090178007 Matas et al. Jul 2009 A1
20090182788 Chung et al. Jul 2009 A1
20090184939 Wohlstadter et al. Jul 2009 A1
20090193358 Mernyk et al. Jul 2009 A1
20090199122 Deutsch et al. Aug 2009 A1
20090199128 Matthews et al. Aug 2009 A1
20090199130 Tsern et al. Aug 2009 A1
20090205041 Michalske Aug 2009 A1
20090215504 Lando Aug 2009 A1
20090225038 Bolsinga et al. Sep 2009 A1
20090228825 Van Os et al. Sep 2009 A1
20090228841 Hildreth Sep 2009 A1
20090235200 Deutsch et al. Sep 2009 A1
20090235203 Iizuka Sep 2009 A1
20090248421 Michaelis et al. Oct 2009 A1
20090249257 Bove et al. Oct 2009 A1
20090265662 Bamford Oct 2009 A1
20090271778 Mandyam et al. Oct 2009 A1
20090284482 Chin Nov 2009 A1
20090284657 Roberts et al. Nov 2009 A1
20090288044 Matthews et al. Nov 2009 A1
20090292989 Matthews et al. Nov 2009 A1
20090293007 Duarte et al. Nov 2009 A1
20090298547 Kim et al. Dec 2009 A1
20090303231 Robinet et al. Dec 2009 A1
20090305732 Marcellino et al. Dec 2009 A1
20090307105 Lemay et al. Dec 2009 A1
20090307589 Inose et al. Dec 2009 A1
20090307623 Agarawala et al. Dec 2009 A1
20090313584 Kerr et al. Dec 2009 A1
20090315839 Wilson et al. Dec 2009 A1
20090315847 Fujii Dec 2009 A1
20090322760 Kwiatkowski Dec 2009 A1
20090327969 Estrada Dec 2009 A1
20100008490 Gharachorloo et al. Jan 2010 A1
20100010934 Barry et al. Jan 2010 A1
20100013782 Liu et al. Jan 2010 A1
20100020025 Lemort et al. Jan 2010 A1
20100020091 Rasmussen et al. Jan 2010 A1
20100031186 Tseng Feb 2010 A1
20100042911 Wormald et al. Feb 2010 A1
20100050076 Roth Feb 2010 A1
20100057566 Itzhak Mar 2010 A1
20100058248 Park Mar 2010 A1
20100066698 Seo Mar 2010 A1
20100070931 Nichols Mar 2010 A1
20100073380 Kaplan et al. Mar 2010 A1
20100075628 Ye Mar 2010 A1
20100077058 Messer Mar 2010 A1
20100077310 Karachale et al. Mar 2010 A1
20100077330 Kaplan et al. Mar 2010 A1
20100079392 Chiang et al. Apr 2010 A1
20100079413 Kawashima et al. Apr 2010 A1
20100081475 Chiang et al. Apr 2010 A1
20100086022 Hunleth et al. Apr 2010 A1
20100087169 Lin Apr 2010 A1
20100087173 Lin Apr 2010 A1
20100088635 Louch Apr 2010 A1
20100100839 Tseng et al. Apr 2010 A1
20100102998 Fux Apr 2010 A1
20100103118 Townsend et al. Apr 2010 A1
20100103124 Kruzeniski Apr 2010 A1
20100105370 Kruzeniski Apr 2010 A1
20100105424 Smuga Apr 2010 A1
20100105438 Wykes Apr 2010 A1
20100105439 Friedman Apr 2010 A1
20100105440 Kruzeniski Apr 2010 A1
20100105441 Voss Apr 2010 A1
20100106915 Krishnaprasad et al. Apr 2010 A1
20100107067 Vaisanen Apr 2010 A1
20100107068 Butcher Apr 2010 A1
20100107100 Schneekloth Apr 2010 A1
20100122110 Ordogh May 2010 A1
20100123737 Williamson et al. May 2010 A1
20100138767 Wang et al. Jun 2010 A1
20100145675 Lloyd et al. Jun 2010 A1
20100146437 Woodcock et al. Jun 2010 A1
20100159966 Friedman Jun 2010 A1
20100159994 Stallings et al. Jun 2010 A1
20100159995 Stallings et al. Jun 2010 A1
20100162180 Dunnam et al. Jun 2010 A1
20100167699 Sigmund et al. Jul 2010 A1
20100169766 Duarte et al. Jul 2010 A1
20100169772 Stallings et al. Jul 2010 A1
20100169819 Bestle et al. Jul 2010 A1
20100175018 Petschnigg et al. Jul 2010 A1
20100175029 Williams Jul 2010 A1
20100180233 Kruzeniski Jul 2010 A1
20100185932 Coffman et al. Jul 2010 A1
20100216491 Winkler et al. Aug 2010 A1
20100223569 Vuong et al. Sep 2010 A1
20100248688 Teng Sep 2010 A1
20100248689 Teng Sep 2010 A1
20100248741 Setlur et al. Sep 2010 A1
20100248787 Smuga Sep 2010 A1
20100248788 Yook et al. Sep 2010 A1
20100251153 SanGiovanni et al. Sep 2010 A1
20100265196 Lee et al. Oct 2010 A1
20100281402 Staikos et al. Nov 2010 A1
20100281409 Rainisto et al. Nov 2010 A1
20100283743 Coddington et al. Nov 2010 A1
20100289806 Lao et al. Nov 2010 A1
20100293056 Flynt et al. Nov 2010 A1
20100295795 Wilairat Nov 2010 A1
20100298034 Shin et al. Nov 2010 A1
20100302172 Wilairat Dec 2010 A1
20100302176 Nikula et al. Dec 2010 A1
20100302278 Shaffer et al. Dec 2010 A1
20100302712 Wilairat Dec 2010 A1
20100311470 Seo et al. Dec 2010 A1
20100313165 Louch et al. Dec 2010 A1
20100321403 Inadome Dec 2010 A1
20100328431 Kim et al. Dec 2010 A1
20100329642 Kam et al. Dec 2010 A1
20100333008 Taylor Dec 2010 A1
20110004839 Cha et al. Jan 2011 A1
20110004845 Ciabarra Jan 2011 A1
20110018806 Yano Jan 2011 A1
20110029598 Arnold et al. Feb 2011 A1
20110029904 Smith et al. Feb 2011 A1
20110029927 Lietzke et al. Feb 2011 A1
20110029934 Locker et al. Feb 2011 A1
20110035702 Williams et al. Feb 2011 A1
20110043527 Ording et al. Feb 2011 A1
20110055773 Agarawala et al. Mar 2011 A1
20110074699 Marr et al. Mar 2011 A1
20110074710 Weeldreyer et al. Mar 2011 A1
20110074719 Yeh et al. Mar 2011 A1
20110087988 Ray et al. Apr 2011 A1
20110093778 Kim et al. Apr 2011 A1
20110093816 Chang et al. Apr 2011 A1
20110093821 Wigdor et al. Apr 2011 A1
20110107272 Aguilar May 2011 A1
20110113337 Liu et al. May 2011 A1
20110113486 Hunt et al. May 2011 A1
20110119586 Blinnikka et al. May 2011 A1
20110126156 Krishnaraj et al. May 2011 A1
20110138313 Decker et al. Jun 2011 A1
20110154235 Min et al. Jun 2011 A1
20110157027 Rissa Jun 2011 A1
20110161845 Stallings et al. Jun 2011 A1
20110163968 Hogan Jul 2011 A1
20110173556 Czerwinski et al. Jul 2011 A1
20110173568 Royal, Jr. et al. Jul 2011 A1
20110173569 Howes et al. Jul 2011 A1
20110175930 Hwang et al. Jul 2011 A1
20110202866 Huang et al. Aug 2011 A1
20110209039 Hinckley et al. Aug 2011 A1
20110209089 Hinckley et al. Aug 2011 A1
20110209100 Hinckley et al. Aug 2011 A1
20110209101 Hinckley et al. Aug 2011 A1
20110209102 Hinckley et al. Aug 2011 A1
20110209103 Hinckley et al. Aug 2011 A1
20110209104 Hinckley et al. Aug 2011 A1
20110225547 Fong et al. Sep 2011 A1
20110231796 Vigil Sep 2011 A1
20110252346 Chaudhri Oct 2011 A1
20110252380 Chaudhri Oct 2011 A1
20110258563 Lincke Oct 2011 A1
20110276864 Oules Nov 2011 A1
20110283188 Farrenkopf et al. Nov 2011 A1
20110316884 Giambalvo et al. Dec 2011 A1
20120005584 Seago et al. Jan 2012 A1
20120009903 Schultz et al. Jan 2012 A1
20120028687 Wykes Feb 2012 A1
20120050185 Davydov et al. Mar 2012 A1
20120050332 Nikara et al. Mar 2012 A1
20120081310 chrock et al. Apr 2012 A1
20120089950 Tseng Apr 2012 A1
20120102433 Falkenburg Apr 2012 A1
20120151397 Oberstein et al. Jun 2012 A1
20120159395 Deutsch et al. Jun 2012 A1
20120159402 Nurmi et al. Jun 2012 A1
20120167008 Zaman Jun 2012 A1
20120167011 Zaman Jun 2012 A1
20120169593 Mak et al. Jul 2012 A1
20120174005 Deutsch Jul 2012 A1
20120174029 Bastide et al. Jul 2012 A1
20120176401 Hayward et al. Jul 2012 A1
20120179992 Smuga Jul 2012 A1
20120210265 Delia et al. Aug 2012 A1
20120212495 Butcher Aug 2012 A1
20120216139 Ording et al. Aug 2012 A1
20120233571 Wever et al. Sep 2012 A1
20120244841 Teng Sep 2012 A1
20120254780 Mouton Oct 2012 A1
20120265644 Roa et al. Oct 2012 A1
20120290962 Zielinski et al. Nov 2012 A1
20120299968 Wong et al. Nov 2012 A1
20120304068 Zaman et al. Nov 2012 A1
20120304092 Jarrett et al. Nov 2012 A1
20120304108 Jarrett et al. Nov 2012 A1
20120304113 Patten et al. Nov 2012 A1
20120304114 Wong et al. Nov 2012 A1
20120304116 Donahue et al. Nov 2012 A1
20120304117 Donahue et al. Nov 2012 A1
20120304118 Donahue et al. Nov 2012 A1
20120311485 Caliendo, Jr. et al. Dec 2012 A1
20120323992 Brobst et al. Dec 2012 A1
20130031508 Kodosky et al. Jan 2013 A1
20130033525 Markiewicz Feb 2013 A1
20130042203 Wong et al. Feb 2013 A1
20130042206 Zaman et al. Feb 2013 A1
20130044141 Markiewicz Feb 2013 A1
20130047079 Kroeger et al. Feb 2013 A1
20130047105 Jarrett Feb 2013 A1
20130047117 Deutsch Feb 2013 A1
20130057587 Leonard et al. Mar 2013 A1
20130057588 Leonard Mar 2013 A1
20130063442 Zaman Mar 2013 A1
20130063465 Zaman Mar 2013 A1
20130063490 Zaman Mar 2013 A1
20130067381 Yalovsky Mar 2013 A1
20130067390 Kwiatkowski Mar 2013 A1
20130067391 Pittappilly Mar 2013 A1
20130067398 Pittappilly Mar 2013 A1
20130067399 Elliott Mar 2013 A1
20130067412 Leonard Mar 2013 A1
20130067420 Pittappilly Mar 2013 A1
20130093757 Cornell Apr 2013 A1
20140082552 Zaman Mar 2014 A1
20140109008 Zaman Apr 2014 A1
Foreign Referenced Citations (50)
Number Date Country
1734440 Feb 2006 CN
1902575 Jan 2007 CN
101114303 Jan 2008 CN
101809531 Aug 2010 CN
102004603 Apr 2011 CN
102033710 Apr 2011 CN
102197702 Sep 2011 CN
102460370 May 2012 CN
0583060 Feb 1994 EP
1752868 Feb 2007 EP
2004227393 Aug 2004 JP
2004357257 Dec 2004 JP
200303655 Feb 2003 KR
20060019198 Mar 2006 KR
1020070036114 Apr 2007 KR
1020070098337 Oct 2007 KR
20070120368 Dec 2007 KR
1020080025951 Mar 2008 KR
1020080041809 May 2008 KR
1020080076390 Aug 2008 KR
100854333 Sep 2008 KR
1020080084156 Sep 2008 KR
1020080113913 Dec 2008 KR
1020090041635 Apr 2009 KR
20100010072 Feb 2010 KR
20100048375 May 2010 KR
20100056369 May 2010 KR
1020100056369 May 2010 KR
201023026 Jun 2010 TW
WO-9926127 May 1999 WO
WO-0129976 Apr 2001 WO
WO-2005026931 Mar 2005 WO
WO-2005027506 Mar 2005 WO
WO-2006019639 Feb 2006 WO
WO-2007121557 Nov 2007 WO
WO-2007134623 Nov 2007 WO
WO-2008030608 Mar 2008 WO
WO-2008031871 Mar 2008 WO
WO-2008035831 Mar 2008 WO
WO-2009000043 Dec 2008 WO
WO-2009012398 Jan 2009 WO
WO-2009049331 Apr 2009 WO
WO-2010024969 Mar 2010 WO
WO-2010048229 Apr 2010 WO
WO-2010048448 Apr 2010 WO
WO-2010048519 Apr 2010 WO
WO-2010117643 Oct 2010 WO
WO-2010125451 Nov 2010 WO
WO-2010135155 Nov 2010 WO
WO-2011041885 Apr 2011 WO
Non-Patent Literature Citations (333)
Entry
“Non-Final Office Action”, U.S. Appl. No. 13/228,888, Feb. 10, 2014, 21 pages.
“Final Office Action”, U.S. Appl. No. 13/118,321, Dec. 19, 2013, 30 pages.
“Adobe Acrobat 8 Standard User Guide”, Adobe Systems Incorporated,(2007), pp. 34 & 36.
“Advisory Action”, U.S. Appl. No. 12/414,382, (Jan. 20, 2012), 3 pages.
“Advisory Action”, U.S. Appl. No. 12/433,605, (Apr. 5, 2012), 3 pages.
“Alltel Adds Dedicated Search Key to Phones”, Retrieved from: <http://www.phonescoop.com/news/item.php?n=2159> on Nov. 26, 2008., (Apr. 12, 2007), 2 Pages.
“Android 2.3 User's Guide”, AUG-2.3-103, Android mobile technology platform 2.3,(Dec. 13, 2010), 380 pages.
“Apple iPhone—8GB AT&T”, Retrieved from: <http://nytimes.com.com/smartphones/apple-iphone-8gb-at/4515-6452—7-32309245.html> on Nov. 20, 2008, (Jun. 29, 2007), 11 pages.
“Ask Web Hosting”, Retrieved from: <http://www.askwebhosting.com/story/18501/HTC—FUZE—From—ATandampT—Fuses—Fun—and—Function—With—the—One-Touch—Power—of—TouchFLO—3D.html> on May 5, 2009., (Nov. 11, 2008), 3 pages.
“Basics of Your Device: Get Familiar with the Home Screen”, Nokia USA—How to, retrieved from <http://www.nokia.ca/get-support-and-software/product-support/c6-01/how-to#> on May 11, 2011, 3 pages.
“Blackberry office tools: Qwerty Convert”, Retrieved from: <http://blackberrysoftwarelist.net/blackberry/download-software/blackberry-office/qwerty—convert.aspx> on Nov. 20, 2008, 1 page.
“Calc4M”, Retrieved from: <http://www.hellebo.com/Calc4M.html> on Dec. 11, 2008, (Sep. 10, 2008), 4 Pages.
“Content-Centric E-Mail Message Analysis in Litigation Document Reviews”, Retrieved from: <http://www.busmanagement.com/article/Issue-14/Data-Management/Content-Centric-E-Mail-Message-Analysis-in-Litigation-Document-Reviews/> on May 6, 2009, (2009), 5 Pages.
“Dial a number”, Retrieved from: <http://www.phonespell.org/ialhelp.html> on Nov. 20, 2008, 1 page.
“DuoSense™ Multi-Touch Gestures”, Retrieved from: <http://www.n-trig.com/Data/Uploads/Misc/DuoSenseMTG—final.pdf>, Jul. 2008, 4 pages.
“Elecont Quick Desktop 1.0.43”, Retrieved from: <http://handheld.softpedia.com/get/System-Utilities/Launcher-Applications/Elecont-Quick-Desktop-72131.shtml> on May 5, 2009., (Mar. 13, 2009), 2 pages.
“Exclusive: Windows Mobile 7 to Focus on Touch and Motion Gestures”, Retrieved from: <http://anti-linux.blogspot.com/2008/08/exclusive-windows-mobile-7-to-focus-on.html> on May 6, 2009, (Aug. 1, 2008), 14 pages.
“Extended European Search Report”, European Patent Application No. 09818253.8, (Apr. 10, 2012), 7 pages.
“Final Office Action”, U.S. Appl. No. 12/244,545, (Dec. 7, 2011), 16 pages.
“Final Office Action”, U.S. Appl. No. 12/244,545, (Sep. 7, 2012), 23 pages.
“Final Office Action”, U.S. Appl. No. 12/413,977, (Nov. 17, 2011), 16 pages.
“Final Office Action”, U.S. Appl. No. 12/414,382, (Dec. 23, 2011), 7 pages.
“Final Office Action”, U.S. Appl. No. 12/414,476, (Dec. 1, 2011), 20 pages.
“Final Office Action”, U.S. Appl. No. 12/433,605, (Feb. 3, 2012), 11 pages.
“Final Office Action”, U.S. Appl. No. 12/433,667, (Sep. 13, 2011), 17 pages.
“Final Office Action”, U.S. Appl. No. 12/469,458, (Nov. 17, 2011), 15 pages.
“Final Office Action”, U.S. Appl. No. 12/469,480, (Feb. 9, 2012), 17 pages.
“Final Office Action”, U.S. Appl. No. 12/484,799, (Apr. 30, 2012), 13 pages.
“Final Office Action”, U.S. Appl. No. 12/560,081, (Mar. 14, 2012), 16 pages.
“Freeware.mobi”, Retrieved from: <http://www.palmfreeware.mobi/download-palette.html> on Nov. 6, 2008, (Oct. 9, 2001), 2 pages.
“How do you dial 1-800-FLOWERS”, Retrieved from: <http://blogs.msdn.com/windowsmobile/archive/2007/02/06/how-do-you-dial-1-800-flowers.aspx> on Nov. 20, 2008, (Feb. 6, 2007), 24 pages.
“HTC Shows HTC Snap with Snappy Email Feature”, Retrieved from: <http://www.wirelessandmobilenews.com/smartphones/ on May 5, 2009>, (May 4, 2009), 10 Pages.
“IntelliScreen-New iPhone App Shows Today Screen Type Info in Lock Screen”, Retrieved from: <http://justanotheriphoneblog.com/wordpress//2008/05/13/intelliscreen-new-iphone-app-shows-today-screen-type-info-on-lock-screen/> on Nov. 12, 2008, (May 13, 2008), 11 pages.
“International Search Report and Written Opinion”, International Application No. PCT/US2011/055514, (May 22, 2012), 8 pages.
“International Search Report”, Application No. PCT/US2010/028553, Application Filing Date: Mar. 24, 2010,(Nov. 9, 2010), 9 pages.
“Internet Explorer Window Restrictions”, Retrieved from: http://technet.microsoft.com/en-us/library/cc759517(WS.10).aspx on Jun. 28, 2011, Microsoft TechNet, 5 pages.
“Introduction to Windows Touch”, Retrieved from: <http://download.microsoft.com/download/a/d/f/adf1347d-08dc-41a4-9084-623b1194d4b2/Win7—touch.docx>, (Dec. 18, 2008), pp. 1-7.
“iPod touch User Guide for iPhone OS 3.0 Software”, Apple Inc.,(2009), 153 pages.
“Keyboard (5)”, Retrieved from: <http://landru.uwaterloo.ca/cgi-bin/man.cgi?section=5&topic=keyboard> on Dec. 11, 2008., (Aug. 11, 1997), 8 Pages.
“Keyboard Shortcuts”, Retrieved from: <http://www.pctoday.com/editorial/article.asp?article=articles%2F2005%2Ft0311%2F26t11%2F26t11.asp> on Aug. 3, 2009., (Nov. 2005), 5 pages.
“Kiosk Browser Chrome Customization Firefox 2.x”, Retrieved from: <http://stlouis-shopper.com/cgi-bin/mozdev-wiki/,pl?ChromeCustomization> on Oct. 22, 2008 Making a new chrome for the kiosk browser, Kiosk Project Kiosk Browser Chrome Customization Firefox-2.x,(Aug. 16, 2007), 2 pages.
“Live Photo Gallery—Getting Started—from Camera to Panorama”, Retrieved from: <http://webdotwiz.spaces.live.com/blog/cns!2782760752B93233!1729.entry> on May 5, 2009., (Sep. 2008), 7 Pages.
“MIDTB Tip Sheet: Book Courier”, Retrieved from: <http://www.midtb.org/tipsbookcourier.htm> on Dec. 11, 2008., (Sep. 26, 2005),6 Pages.
“Mobile/UI/Designs/TouchScreen”, Retrieved from: <https://wiki.mozilla.org/Mobile/UI/Designs/TouchScreen> on May 6, 2009., (Feb. 3, 2009), 15 Pages.
“Multi-touch”, Retrieved from <http://en.wikipedia.org/wiki/Multi-touch#Microsoft—Surface> on Apr. 24, 2009, (Apr. 17, 2009), 8 pages.
“Nokia E61 Tips and Tricks for Keyboard Shortcuts”, Retrieved from: <http://www.mobiletopsoft.com/board/1810/nokia-e61-tips-and-tricks-for-keyboard-shortcuts.html> on Dec. 17, 2008., (Jan. 27, 2006), 2 Pages.
“Non-Final Office Action”, U.S. Appl. No. 11/215,052, (Jun. 23, 2011), 17 pages.
“Non-Final Office Action”, U.S. Appl. No. 11/502,264, (Sep. 14, 2012), 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/244,545, (Mar. 27, 2012), 18 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/244,545, (Aug. 17, 2011), 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/413,977, (Jul. 19, 2011), 17 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/413,977, (Jul. 20, 2012), 18 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,382, (Jul. 26, 2011), 9 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,434, (Jan. 17, 2012), 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,434, (May 31, 2012), 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,434, (Aug. 2, 2011), 6 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,455, (Aug. 29, 2011), 8 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,458, (Jul. 6, 2011), 8 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,476, (Nov. 9, 2012), 22 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/414,476, (Aug. 3, 2011), 21 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/433,605, (Jun. 24, 2011), 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/433,667, (Jun. 7, 2011), 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/433,667, (Feb. 3, 2012), 16 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/469,419, (Nov. 9, 2011), 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/469,419, (May 23, 2012), 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/469,458, (Jul. 1, 2011), 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/469,458, (Sep. 21, 2012), 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/469,480, (Oct. 17, 2012), 16 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/469,480, (Sep. 22, 2011), 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/470,558, (Nov. 22, 2011) 9 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/480,969, (Aug. 7, 2012), 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/484,799, (Aug. 11, 2011), 12 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/484,799, (Aug. 7, 2012), 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/484,845, (Dec. 7, 2011), 16 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/560,081, (Dec. 7, 2011), 16 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/983,106, (Nov. 9, 2012), 17 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/492,495, (Sep. 17, 2012), 8 pages.
“Notice of Allowance”, U.S. Appl. No. 11/215,052, (Mar. 14, 2012), 5 pages.
“Notice of Allowance”, U.S. Appl. No. 12/414,382, (Apr. 4, 2012), 4 pages.
“Notice of Allowance”, U.S. Appl. No. 12/414,434, (Aug. 17, 2012), 4 pages.
“Notice of Allowance”, U.S. Appl. No. 12/414,455, (Jan. 4, 2012), 4 pages.
“Notice of Allowance”, U.S. Appl. No. 12/414,458, (Oct. 31, 2011), 2 pages.
“Notice of Allowance”, U.S. Appl. No. 12/414,458, (Nov. 29, 2011), 2 pages.
“Notice of Allowance”, U.S. Appl. No. 12/414,458, (Aug. 10, 2011), 6 pages.
“Notice of Allowance”, U.S. Appl. No. 12/470,558, (Apr. 2, 2012), 7 pages.
“Notice of Allowance”, U.S. Appl. No. 12/470,558, (Aug. 23, 2012), 2 pages.
“Notice of Allowance”, U.S. Appl. No. 12/484,799, (Oct. 22, 2012), 10 pages.
“Notice of Allowance”, U.S. Appl. No. 12/484,845, (Mar. 16, 2012), 5 pages.
“Oracle8i Application Developers Guide—Advanced Queuing Release 2 (8.1.6)”, Retrieved from: http://www.cs.otago.ac.nz/oradocs/appdev.817/a76938/adq0lin5.htm on May 6, 2009., (Dec. 1999), 8 pages.
“Oracle8i Application Developers Guide—Advanced Queuing”, Retrieved from: http://www.cs.umbc.edu/help/oracle8/server.815/a68005/03—adq1i.htm on May 6, 2009., (Feb. 1999), 29 Pages.
“Oracle8i Concepts Release 8.1.5”, Retrieved from: http://www.cs.umbc.edu/help/oracle8/server.815/a67781/c16queue.htm on May 6, 2009., (Feb. 1999), 10 Pages.
“Palette Extender 1.0.2”, Retrieved from: <http://palette-extender.en.softonic.com/symbian> on Nov. 6, 2008, (Jan. 21, 2003), 2 pages.
“Parallax Scrolling”, Retrieved from: <http://en.wikipedia.org/wiki/Parallax—scrolling> on May 5, 2009., (May 4, 2009), 3 Pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2009/061382, (May 26, 2010), 10 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2009/061735, (Jun. 7, 2010), 11 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2010/028699, (Oct. 4, 2010), 10 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2010/028555, (Oct. 12, 2010), 10 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2010/034772, (Dec. 29, 2010), 12 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055523, (May 10, 2012), 9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055513, (Mar. 27, 2012), 8 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055512, (May 24, 2012), 8 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055524, (Jun. 1, 2012), 8 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/065702, (Aug. 29, 2012), 8 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055712, (Sep. 21, 2012), 9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055736, (Sep. 17, 2012), 8 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055496, (Sep. 12, 2012), 9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/067073, (Sep. 17, 2012), 8 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055746, (Sep. 27, 2012), 9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055725, (Sep. 27, 2012), 10 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055478, (Sep. 27, 2012), 9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055493, (Sep. 26, 2012), 9 pages.
“PCT Search Report and Written Opinion”, PCT Application No. PCT/US2010/038730, (Jan. 19, 2011), 8 pages.
“PCT Search Report”, Application Serial No. PCT/US2009/061864, (May 14, 2010), 10 pages.
“Remapping the Keyboard”, Retrieved from: <http://publib.boulder.ibm.com/infocenter/hodhelp/v9r0/index.jsp?topic=/com.ibm.hod9.doc/help/assignkey.html> on Dec. 11, 2008., (Jul. 15, 2005), 5 Pages.
“SecureMe-Anti-Theft Security Application for S60 3rd”, Retrieved from: <http:/www.killermobile.com/newsite/mobile-software/s60-applications/secureme-%11-anti%11theft-security-application-for-s60-3rd.htm> on Jun. 28, 2011, (Dec. 15, 2008), 3 pages.
“Snap”, Windows 7 Features, retrieved from <http://windows.microsoft.com/en-US/windows7/products/features/snap> on Sep. 23, 2011, 2 pages.
“Symbian Applications”, Retrieved from: <http://symbianfullversion.blogspot.com/2008—12—01—archive.html> on May 5, 2009., (Jan. 2009), 51 Pages.
“Top 3 Task Switchers for Android”, TechCredo, retrieved from <http://www.techcredo.com/android/top-3-task-switchers-for-android> on May 11, 2011,(Mar. 9, 2011), 5 pages.
“Top Android App: Swipepad”, Best Android Apps Review, retrieved from <http://www.bestandroidappsreview.com/2011/01/top-android-app-swipepad-launcher.html> on May 11, 2011, 4 pages.
“Touch Shell Free”, Retrieved from: <http://www.pocketpcfreeware.mobi/download-touch-shell-free.html> May 5, 2009., (Feb. 23, 2009), 2 Pages.
“Windows Phone 7 (Push Notification)”, retrieved from <http://unknownerror.net/2011-06/windows-phone-7-push-notification-36520> on Jul. 6, 2011, 4 pages.
“Winterface Review”, Retrieved from: <http://www.mytodayscreen.com/winterface-review/> on Nov. 12, 2008,(Jul. 9, 2008), 42 pages.
“Womma”, Retrieved from: <http://www.womma.org/blog/links/wom-trends/> on May 5, 2009., (2007), 70 Pages.
“Working with Multiple Windows”, MSOFFICE tutorial!, retrieved from <http://www.msoffice-tutorial.com/working-with-multiple-windows.php> on Sep. 23, 2011, 3 pages.
Beiber, Gerald et al., “Screen Coverage: A Pen-Interaction Problem for PDA's and Touch Screen Computers”, In Proceedings of ICWMC 2007,(Mar. 2007), 6 pages.
Damien, “7 Ways to Supercharge Multitasking in Android”, retrieved from <http://maketecheasier.com/7-ways-to-supercharge-multitasking-in-android/2011/01/22/> on May 11, 2011,(Jan. 22, 2011), 5 pages.
Dolcourt, Jessica “Webware”, Retrieved from: <http://news.cnet.com/webware/?categoryId=2010> on May 5, 2009., 13 Pages.
Gade, Lisa “Samsung Alias u740”, Retrieved from: <http://www.mobiletechreview.com/phones/Samsung-U740.htm> on Nov. 20, 2008, (Mar. 14, 2007), 6 pages.
Gao, Rui “A General Logging Service for Symbian based Mobile Phones”, Retrieved from: <http://www.nada.kth.se/utbildning/grukth/exjobb/rapportlistor/2007/rapporter07/gao—rui—07132.pdf.> on Jul. 17, 2008, (Feb. 2007), pp. 1-42.
Ha, Rick et al., “SIMKEYS: An Efficient Keypad Configuration for Mobile Communications”, Retrieved from: <http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=01362557.> on Dec. 17, 2008, (Nov. 2004), 7 Pages.
Harrison, Richard “Symbian OS C++ for Mobile Phones Volume 3”, Retrieved from: <http:// www.amazon.co.uk/Symbian-OS-Mobile-Phones-Press/dp/productdescription/0470066415> on Oct. 23, 2008, Symbian Press,(Jun. 16, 2003), 4 pages.
Hickey, Andrew R., “Google Android has Landed; T-Mobile, HTC Unveil G1”, Retrieved from: <http://www.crn.com/retail/210603348> on Nov. 26, 2008., (Sep. 23, 2008), 4 pages.
Kcholi, Avi “Windows CE .NET Interprocess Communication”, Retrieved from http://msdn.microsoft.com/en-us/library/ms836784.aspx on Jul. 17, 2008., (Jan. 2004), 15 Pages.
La, Nick “Parallax Gallery”, Available at <http://webdesignerwall.comtutorials/parallax-gallery/comment-page-1>,(Apr. 25, 2008), 16 pages.
Mann, Richard et al., “Spectrum Analysis of Motion Parallax in a 3D Cluttered Scene and Application to Egomotion”, Journal of the Optical Society of America A, vol. 22, No. 9, Available at <http://www.cs.uwaterloo.ca/˜mannr/snow/josa-mann-langer.pdf>,(Sep. 2005), pp. 1717-1731.
Mantia, Louie “Multitasking: What Does It Mean?”, retrieved from <http://mantia.me/blog/multitasking/> on Sep. 23, 2011, 3 pages.
Mao, Jeng “Comments of Verizon Wireless Messaging Services, LLC”, Retrieved from: http://www.ntia.doc.gov/osmhome/warnings/comments/verizon.htm on May 6, 2009., (Aug. 18, 2000), 5 Pages.
Marie, Angelina “MacBook Trackpad Four Fingers Swipe Left/Right to Switch Applications”, MacBook Junkie, retrieved from <http://www.macbookjunkie.com/macbook-trackpad-four-fingers-swipe-left-right-to-switch-applications/> on May 11, 2011,(Nov. 13, 2010), 4 pages.
Mei, Tao et al., “Probabilistic Multimodality Fusion for Event Based Home Photo Clustering”, Retrieved from: <http://ieeexplore.ieee.org//stamp/stamp.jsp?tp=&arnumber=04036960.>, (Dec. 26, 2006), pp. 1757-1760.
Nordgren, Peder “Development of a Touch Screen Interface for Scania Interactor”, Master's Thesis in Computing Science, UMEA University, Available at <http://www.cs.umu.se/education/examina/Rapporter/PederNordgren.pdf>,(Apr. 10, 2007), pp. 1-59.
Oliver, Sam “Potential iPhone Usability and Interface Improvements”, Retrieved from: <http://www.appleinsider.com/articles/08/09/18/potention—iphone—usability—and—interface—improvements.html> on Nov. 12, 2008, AppleInsider,(Sep. 18, 2008), 4 pages.
Oryl, Michael “Review: Asus P527 Smartphone for North America”, Retrieved from: <http://www.mobileburn.com/review.jsp?Id=4257> on Dec. 17, 2008., (Mar. 5, 2008), 1 Page.
Padilla, Alfredo “Palm Treo 750 Cell Phone Review—Hardware”, Retrieved from: <http://www.wirelessinfo.com/content/palm-Treo-750-Cell-Phone-Review/Hardware.htm> on Dec. 11, 2008., (Mar. 17, 2007), 4 Pages.
Raghaven, Gopal et al., “Model Based Estimation and Verification of Mobile Device Performance”, Available at http://alumni.cs.ucsb.edu/˜raimisl/emsoft04—12.pdf.,(Sep. 27-29, 2004), 10 Pages.
Reed, Brad “Microsoft Demos Windows Mobile 6.1 at CTIA”, Retrieved from: <http://www.networkworld.com/news/2008/040208-ctia-microsoft-windows-mobile.html> on Jul. 18, 2008, (Apr. 2, 2008), 1 page.
Remond, Mickael “Mobile Marketing Solutions”, Retrieved from: <http://www.mobilemarketingmagazine.co.uk/mobile—social—networking/> on May 5, 2009., (Apr. 28, 2009), 16 Pages.
Rice, Stephen V., et al., “A System for Searching Sound Palettes”, Proceedings of the Eleventh Biennial Symposium on Arts and Technology,, available at <http://www.comparisonics.com/FindSoundsPalettePaper.pdf>,(Feb. 2008), 6 pages.
Roberts, Neil “Touching and Gesturing on the iPhone”, Available at <http://www.sitepen.com/blog/2008/07/10/touching-and-gesturing-on-the-iphone/comments-pare-1>,(Jul. 10, 2008), 16 pages.
Singh, Kundan et al., “CINEMA: Columbia InterNet Extensible Multimedia Architecture”, Available at <http://www1.cs.columbia.edu/˜library/TR-repository/reports/reports-2002/cucs-011-02.pdf>,(Sep. 3, 2002), 83 Pages.
Steinicke, Frank et al., “Multi—Touching 3D Data: Towards Direct Interaction in Stereoscopic Display Environments coupled with Mobile Devices”, Advanced Visual Interfaces (AVI) Workshop on Designing Multi-Touch Interaction Techniques for Coupled Public, Available at <http://viscg.uni-muenster.de/publications/2008/SHSK08/ppd-workshop.-pdf.>, (Jun. 15, 2008), 4 Pages.
Suror, “PocketShield-New Screenlock App for the HTC Diamond and Pro”, Retrieved from: <http://wmpoweruser.com/?tag=htc-touch-diamond> on Jun. 28, 2011, (Oct. 23, 2008), 2 pages.
Terpstra, Brett “Beta Beat: Grape, a New Way to Manage Your Desktop Clutter”, Retrieved from: Beta Beat: Grape, a New Way to Manage Your Desktop Clutter on Jun. 28, 2011, (Apr. 14, 2009), 4 pages.
Vallerio, Keith S., et al., “Energy-Efficient Graphical User Interface Design”, Retrieved from: <http://www.cc.gatech.edu/classes/AY2007/cs7470—fall/zhonq-energy-efficient-user-interface.pdf>, (Jun. 10, 2004), pp. 1-13.
Vermeulen, Jan “BlackBerry PlayBook Hands-on”, retrieved from <http://mybroadband.co.za/news/gadgets/20104-BlackBerry-PlayBook-hands-.html> on May 11, 2011,(May 8, 2011), 4 pages.
Viticci, Federico “Growl 1.3 To Be Released on Mac App Store, Introduce Lion Support and Drop GrowlMail Support”, Retrieved from: <http://www.macstories.net/stories/grow1-1-3-to-be-released-on-mac-app-store-introduce-lion-support-and-drop-growlmail-support/> on Jul. 22, 2011,(Jul. 6, 2011), 6 pages.
Wilson, Tracy V., “How the iPhone Works”, Retrieved from: <http://electronics.howstuffworks.com/iphone2.htm> on Apr. 24, 2009, (Jan. 2007), 9 pages.
Wobbrock, Jacob O., et al., “User-Defined Gestures for Surface Computing”, CHI 2009, Apr. 4-9, 2009, Boston, MA, available at <http://faculty.washington.edu/wobbrock/pubs/chi-09.2.pdf>,(Apr. 4, 2009), 10 pages.
Wyatt, Paul “/Flash/the art of parallax scrolling”, .net Magazine,(Aug. 1, 2007), pp. 74-76.
Yang, Seungji et al., “Semantic Photo Album Based on MPEG-4 Compatible Application Format”, Retrieved from: <http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=04146254.>, (2007), 2 Pages.
“Final Office Action”, U.S. Appl. No. 13/655,386, (Jun. 6, 2013), 34 pages.
“Final Office Action”, U.S. Appl. No. 13/656,354, (Jun. 17, 2013), 14 pages.
“Final Office Action”, U.S. Appl. No. 13/657,646, (May 6, 2013), 12 pages.
“Final Office Action”, U.S. Appl. No. 13/657,789, (Jun. 21, 2013), 35 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/073,300, (Jul. 25, 2013),13 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,321, (Jun. 10, 2013), 32 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,333, (Jul. 5, 2013),18 pages.
“Notice of Allowance”, U.S. Appl. No. 12/977,584, (Jun. 19, 2013), 5 pages.
“Notice of Allowance”, U.S. Appl. No. 13/655,390, (May 24, 2013), 5 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/655,390, (Jul. 25, 2013), 2 pages.
Kurdi, Samer “Acer GridVista: snap your windows to pre-defined sections on your screen(s)”, Retrieved from <http://www.freewaregenius.com/acer-gridvista-snap-your-windows-to-pre-defined-sections-of-your-screens/> on Jun. 30, 2013, (Jan. 19, 2010), 6 pages.
Kurdi, Samer “WinSplit Revolution”, Retrieved from <http://www.freewaregenius.com/winsplit-revolution/> on Jun. 30, 2013, (Aug. 22, 2007), 4 Pages.
“International Search Report and Written Opinion”, International Application No. PCT/US2011/055521, (May 15, 2012),9 pages.
“International Search Report and Written Opinion”, International Application No. PCT/US2011/055522, (May 15, 2012),9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055511, (Apr. 24, 2012),9 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/055520, (May 9, 2012),8 pages.
“Final Office Action”, U.S. Appl. No. 12/721,422, (Mar. 7, 2013), 10 pages.
“Final Office Action”, U.S. Appl. No. 13/118,339, (Aug. 22, 2013), 21 pages.
“Final Office Action”, U.S. Appl. No. 13/118,347, (Aug. 15, 2013), 25 pages.
“Final Office Action”, U.S. Appl. No. 13/656,574, (Aug. 23, 2013), 20 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/721,422, (Oct. 1, 2012), 7 pages.
“Notice of Allowance”, U.S. Appl. No. 12/721,422, (Jul. 11, 2013), 9 pages.
“Notice of Allowance”, U.S. Appl. No. 12/978,184, (Aug. 2, 2013), 5 pages.
“You've Got Mail 1.4 Build”, retrieved from <http://www.fileshome.com/Shows—Plays—Sound—Automatic—N . . . > on Jan. 6, 2010, (Jun. 18, 2007), 2 pages.
Farrugia, Michael et al., “Cell Phone Mini Challenge: Node-Link Animation Award Animating Multivariate Dynamic Social Science and Technology”, IEEE Symposium on Visual Analytics Science and Technology, Columbus, OH, USA, Oct. 21-23, 2008, (Oct. 21, 2008), 2 pages.
Keranen, Jaakko “OpenGL-based User Interface Toolkit for Symbian Mobile Devices”, Master of Science Thesis, Tamere University of Technology, Department of Information Technology, (Apr. 6, 2005), 88 pages.
“Final Office Action”, U.S. Appl. No. 11/502,264, (Mar. 29, 2013), 16 pages.
“My Favorite Gadgets, System Monitor II”, Retrieved from <http://www.myfavoritegadgets.info/monitors/SystemMonitorII/systemmonitorII.html> on Mar. 12, 2013, (Jun. 8, 2010), 5 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,204, (Feb. 28, 2013), 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,257, (Mar. 5, 2013), 19 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,339, (Feb. 11, 2013), 15 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,347, (Feb. 12, 2013), 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/229,693, (Mar. 12, 2013), 21 pages.
“Notice of Allowance”, U.S. Appl. No. 13/492,495, (Apr. 26, 2013), 5 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2012/047091, (Dec. 27, 2012), 15 pages.
Bruzzese, J. P., “Using Windows 7, Managing and Monitoring Windows 7—Chapter 11”, Que Publishing, (May 5, 2010), 33 pages.
Gralla, Preston “Windows XP Hacks, Chapter 13—Hardware Hacks”, O'Reilly Publishing, (Feb. 23, 2005), 25 pages.
Horowitz, Michael “Installing and Tweaking Process Explorer part 2”, Retrieved from <http://web.archive.org/web/20110510093838/http://blogs.computerworld.com/16165/installing—and—tweaking—process—explorer—part—2> on Mar. 12, 2013, (May 23, 2010), 7 pages.
“Application User Model IDs”, Retrieved from: <http://msdn.microsoft.com/en-us/library/dd378459(VS.85).aspx> on Sep. 28, 2010, (2010),6 pages.
“Class ScrollView”, Retrieved from: <http://www.blackberry.com/developers/docs/6.0.0api/net/rim/device/api/ui/ScrollView.html> on Sep. 28, 2010, 13 pages.
“Email Notification for Microsoft Outlook and Outlook Express”, Retrieved from: <http://www.contextmagic.com/express-notification/> on Sep. 29, 2010, (Jul. 21, 2004),3 pages.
“Enhanced IBM Power Systems Software and PowerVM Restructuring”, IBM United States Announcement 208-082, dated Apr. 8, 2008, available at <http://www.ibm.com/common/ssi/rep—ca/2/897/ENUS208-082/ENUS208082.PDF>,(Apr. 8, 2008),pp. 1-19.
“eXtreme Energy Conservation: Advanced Power-Saving Software for Wireless Devices”, White Paper, Freescale Semiconductor, Inc., Document No. XTMENRGYCNSVWP, Rev #0, available at <http://www.freescale.com/files/32bit/doc/white—paper/XTMENRGYCNSVWP.pdf>,(Feb. 2006),15 pages.
“Final Office Action”, U.S. Appl. No. 11/305,789, (Apr. 1, 2009), 10 pages.
“Final Office Action”, U.S. Appl. No. 11/502,264, (Feb. 4, 2010), 15 pages.
“Final Office Action”, U.S. Appl. No. 11/502,264, (Apr. 3, 2009),9 pages.
“GnomeCanvas”, Retrieved from: <http://library.gnome.org/devel/libgnomecanvas/unstable/GnomeCanvas.html> on Sep. 28, 2010, 11 pages.
“How Do I Cancel a “Drag” Motion on an Android Seekbar?”, retrieved from <http://stackoverflow.com/questions/2917969/how-do-i-cancel-a-drag-motion-on-an-android-seekbar> on Jun. 20, 2011,(May 28, 2010), 1 page.
“How do I use Categories with my Weblog?”, Retrieved from: <http://tpsupport.mtcs.sixapart.com/tp/us-tp1/how—do—i—use—categories—with—my—weblog.html> on Sep. 28, 2010, (Sep. 16, 2009),3 pages.
“iPad User Guide”, retrieved from <http://cyndidannerkuhn.info/CDK/iPads—Resources—files/iPad—User—Guide.pdf> on Jun. 17, 2011,154 pages.
“Magic mouse”, Retrieved from: <http://www.apple.com/magicmouse/> on May 10, 2011,3 pages.
“moGo beta v.0.4”, Retrieved from: <http://forum.xda-developers.com/showthread.php?t=375196> on Sep. 27, 2010, (Mar. 7, 2008), 10 pages.
“New Features in WhatsUp Gold v12.0”, retrieved from <http://www.netbright.co.th/?name=product&file=readproduct&id=12> on Jun. 10, 2011,4 pages.
“Non-Final Office Action”, U.S. Appl. No. 11/305,789, (Sep. 21, 2009),5 pages.
“Non-Final Office Action”, U.S. Appl. No. 11/502,264, (Sep. 30, 2009),15 pages.
“Notice of Allowance”, U.S. Appl. No. 11/305,789, (Nov. 23, 2009),8 pages.
“Notifications”, retrieved from <http://msdn.microsoft.com/en-us/library/aa511497.aspx> on May 10, 2011, 16 pages.
“OmneMon™ System Resource Metrics”, retrieved from <http://www.omnesys.com/documents/OmneMonSRM—Brochure.pdf> on Jun. 10, 2011,3 pages.
“ONYX Graphics Announces New ONYX Prepedge Job Preparation Software”, retrieved from <http://www.largeformatreview.com/rip-software/433-onyx-graphics-announces-new-onyx-> on May 10, 2011,2 pages.
“Push Notifications Overview for Windows Phone”, Retrieved from: <http://msdn.microsoft.com/en-us/library/ff402558%28VS.92%29.aspx> on Sep. 30, 2010 (Sep. 3, 2010), 1 page.
“The Map Screen”, retrieved from <http://www.symbianos.org/whereamiusersguide> on Jun. 17, 2011,3 pages.
“User Guide”, retrieved from <http://wireframesketcher.com/help/help.html> on Jun. 17, 2011,19 pages.
“Windows 8 Is Gorgeous, But Is It More Than Just a Shell? (Video)”, retrieved from <http://techcrunch.com/2011/06/02/windows-8-gorgeous-shell-video/> on Jun. 20, 2011,(Jun. 2, 2011),6 pages.
“Windows Phone 7 Live Tiles”, Retrieved from: <http://www.knowyourmobile.com/microsoft/windowsphone7/startscreen/640737/windows—phone—7—live—tiles.html> on May 11, 2011,(Oct. 20, 2010),3 pages.
“YUI 3: ScrollView [beta]”, Retrieved from: <http://developer.yahoo.com/yui/3/scrollview/> on Sep. 28, 2010, 5 pages.
Bates, John “A Framework to Support Large-Scale”, University of Cambridge Computer Laboratory, Available at <http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.48.1690&rep=rep1&type=pdf>,(1996),8 pages.
Bjork, Staffan et al., “Redefining the Focus and Context of Focus+Context Visualizations”, In Proceedings of INFOVIS 2000, Available at <http://www.johan.redstrom.se/papers/redefining.pdf>,(Oct. 2000),9 pages.
Bowes, James et al., “Transparency for Item Highlighting”, Faculty of Computing Science, Dalhousie University, Available at <http://torch.cs.dal.ca/˜dearman/pubs/GI2003-bowes,dearman,perkins-paper.pdf>,(2003),2 pages.
Buring, Thorsten “User Interaction with Scatterplots on Small Screens—A Comparative Evaluation of Geometric-Semantic Zoom and Fisheye Distortion”, IEEE Transactions on Visualization and Computer Graphics, vol. 12, Issue 5, Available at <http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.134.4568&rep=rep1&type=pdf>,(Sep. 2006),pp. 829-836.
Carrera, Enrique V., et al., “Conserving Disk Energy in Network Servers”, available at <http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.6.8301&rep=rep1&type=ps>,(Nov. 2002),15 pages.
Cawley, Christian “How to Customise Your Windows Phone 7”, Retrieved from: <http://www.brighthub.com/mobile/windows-mobile-platform/articles/95213.aspx> on May 10, 2011,(Nov. 12, 2010),3 pages.
Cawley, Christian “Windows Phone 7 Customization Tips and Tricks”, retrieved from <http://www.brighthub.com/mobile/windows-mobile-platform/articles/95213.aspx> on Jun. 20, 2011,(May 16, 2011),2 pages.
Cohen, Michael F., et al., “Wang Tiles for Image and Texture Generation”, In Proceedings of SIGGRAPH 2003, Available <http://research.microsoft.com/en-us/um/people/cohen/WangFinal.pdf>,(2003),8 pages.
Davis, Ashley “A WPF Custom Control for Zooming and Panning”, Retrieved from: <http://www.codeproject.com/KB/WPF/zoomandpancontrol.aspx> on Sep. 28, 2010 (Jun. 29, 2010),21 pages.
Delimarsky, Den “Sending Tile Push Notifications on Windows Phone 7”, retrieved from <http://mobile.dzone.com/articles/sending-tile-push> on May 10, 2011,(Aug. 25, 2010),2 pages.
Denoue, Laurent et al., “WebNC: Efficient Sharing of Web Applications”, In Proceedings of WWW 2009, Available at <http://www.fxpal.com/publications/FXPAL-PR-09-495.pdf>,(2009),2 pages.
Dunsmuir, Dustin “Selective Semantic Zoom of a Document Collection”, Available at <http://www.cs.ubc.ca/˜tmm/courses/533/projects/dustin/proposal.pdf>,(Oct. 30, 2009),pp. 1-9.
Fisher, Bill “Cool Discussion of Push Notifications—Toast and Tile—on Windows Phone”, Retrieved from: <http://www.windowsphoneexpert.com/Connection/forums/p/4153/18399.aspx> on Sep. 29, 2010 (May 3, 2010),3 pages.
Janecek, Paul et al., “An Evaluation of Semantic Fisheye Views for Opportunistic Search in an Annotated Image Collection”, Available at <http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.67.3084&rep=rep1&type=pdf>,(Feb. 15, 2005),pp. 1-15.
Long, Todd “Gmail Manager 0.6”, Retrieved from: <https://addons.mozilla.org/en-US/firefox/addon/1320/> on Sep. 29, 2010, (Jan. 27, 2010),4 pages.
Paul, Ryan “Hands-on: KDE 4.5 Launches with Tiling, New Notifications”, Retrieved from: <http://arstechnica.com/open-source/reviews/2010/08/hands-on-kde-45-launches-with-tiling-new-notifications.ars> on Sep. 29, 2010, (Aug. 2010),3 pages.
Ray, Bill “Microsoft Re-Tiles Mobile Platform for Windows 7 Era”, retrieved from <http://www.theregister.co.uk/2010/02/15/windows—phone—7—series/> on May 11, 2011,(Feb. 15, 2010),2 pages.
Ritchie, Rene “iOS 4 features: iPod touch Wi-Fi stays connected when asleep—iPhone too?”, Retrieved from: <http://www.goip.com/2010/06/ios-4-features-ipod-touch-wi-fi-stays-connected-when-asleep-%E2%80%94-iphone-too/> on Sep. 30, 2010 (Jun. 14, 2010),2 pages.
Ritscher, Walt “Using Surface APIs in your WPF application—Part 1”, Retrieved from: <http://blog.wpfwonderland.com/2009/06/30/using-surface-apis-in-your-wpf-application/> on Sep. 28, 2010, (Jun. 30, 2009),7 pages.
Sandoval, Guillermo L., “A development platform and execution environment for mobile applications”, Universidad Autónoma de Baja California, School of Chemical Sciences and Engineering, Available at <http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.86.7989&rep=rep1&type=pdf>,(2004),18 pages.
Smith, Greg et al., “GroupBar: The TaskBar Evolved”, Proceedings of OZCHI 2003 Available at <http://research.microsoft.com/pubs/64316/ozchi2003-groupbar.pdf>,(Nov. 2003),pp. 1-10.
Vornberger, Jan “Bluetile”, Retrieved from: <http://www.bluetile.org> on Sep. 29, 2010, 5 pages.
Wilson, Andrew D., “Robust Computer Vision-Based Detection of Pinching for One and Two-Handed Gesture Input”, In Proceedings of UIST 2006, Available at <http://research.microsoft.com/en-us/um/people/awilson/publications/wilsonuist2006/uist%202006%20taffi.pdf>,(Oct. 2006),4 pages.
Wu, Chung et al., “Achieving a Superior Ownership Experience in Manageability and Quality for Siebel CRM”, available at <http://www.oracle.com/us/products/enterprise-manager/superior-exp-for-siebel-crm-068962.pdf>,(Aug. 2008),25 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/656,354, (Feb. 6, 2013), 10 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/656,574, (Jan. 31, 2013), 21 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/657,621, (Feb. 7, 2013), 19 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/657,646, (Jan. 3, 2013), 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/657,789, (Jan. 9, 2013), 38 pages.
“PCT Search Report and Written Opinion”, Application No. PCT/US2011/067075, (Dec. 12, 2012), 10 pages.
Livingston, et al., “Windows 95 Secrets”, 1995, I DG Books Worldwide, 3rd Edition, (1995), pp. 121-127.
Perry, Greg “Teach Yourself Windows 95 in 24 Hours”, 1997, Sams Publishing, 2nd Edition (1997), pp. 193-198.
“Foreign Office Action”, CN Application No. 201110429183.5, Jan. 6, 2014, 10 Pages.
“Foreign Office Action”, CN Application No. 201110437542.1, Jan. 6, 2014, 10 Pages.
“Foreign Office Action”, CN Application No. 201110437572.2, Dec. 3, 2013, 7 pages.
“Foreign Office Action”, CN Application No. 201110454251.3, Dec. 27, 2013, 12 Pages.
“Restriction Requirement”, U.S. Appl. No. 13/118,265, Feb. 27, 2014, 7 pages.
“Restriction Requirement”, U.S. Appl. No. 13/118,288, Mar. 4, 2014, 7 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 12/978,184, Feb. 25, 2014, 2 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/972,967, (Jan. 30, 2013), 19 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/977,584, (Dec. 7, 2012), 8 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/978,184, (Jan. 23, 2013), 7 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/196,272, (Feb. 6, 2013),10 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/224,258, (Jan. 8, 2013), 35 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/492,495, (Dec. 19, 2012), 6 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/655,386, (Dec. 26, 2012), 23 pages.
“Final Office Action”, U.S. Appl. No. 12/972,967, (Oct. 11, 2013), 21 pages.
“Final Office Action”, U.S. Appl. No. 12/983,106, (Oct. 7, 2013), 19 pages.
“Final Office Action”, U.S. Appl. No. 13/118,204, (Nov. 21, 2013), 24 pages.
“Final Office Action”, U.S. Appl. No. 13/224,258, (Sep. 11, 2013), 37 pages.
“Final Office Action”, U.S. Appl. No. 13/229,693, (Sep. 4, 2013), 23 pages.
“Final Office Action”, U.S. Appl. No. 13/657,621, (Sep. 10, 2013), 18 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/228,707, (Oct. 25, 2013), 12 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/196,272, (Sep. 3, 2013), 5 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/228,876, (Nov. 22, 2013), 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/229,155, (Nov. 18, 2013), 14 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/655,390, (Dec. 17, 2012), 12 pages.
“Notice of Allowance”, U.S. Appl. No. 12/978,184, (Nov. 6, 2013), 5 pages.
“Notice of Allowance”, U.S. Appl. No. 13/196,272, (Nov. 8, 2013), 8 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 12/977,584, (Sep. 16, 2013), 2 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 12/977,584, (Oct. 11, 2013), 2 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/655,390, (Sep. 19, 2013), 2 pages.
“Final Office Action”, U.S. Appl. No. 13/073,300, Apr. 1, 2014, 14 pages.
“Final Office Action”, U.S. Appl. No. 13/118,333, Apr. 23, 2014, 22 pages.
“Final Office Action”, U.S. Appl. No. 13/228,707, May 21, 2014, 16 pages.
“Final Office Action”, U.S. Appl. No. 13/229,155, Jun. 12, 2014, 15 pages.
“First Examination Report”, NZ Application No. 618269, May 20, 2014, 2 pages.
“First Examination Report”, NZ Application No. 618284, May 20, 2014, 2 pages.
“Gestures Programming”, Retrieved from <http://doc.qt.digia.com/4.6/gestures-overview.html> on May 28, 2014, 2010, 3 pages.
“Image Gestures Example”, Retrieved from <http://doc.qt.digia.com/4.6/gestures-imagegestures.html> on May 28, 2014, 2010, 3 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,265, Jun. 10, 2014, 13 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,288, Jul. 2, 2014, 17 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,292, Jun. 6, 2014, 25 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/228,931, Apr. 7, 2014, 21 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/228,945, Apr. 14, 2014, 22 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/229,693, Jun. 20, 2014, 25 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/229,702, Jul. 3, 2014, 28 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/229,709, Apr. 7, 2014, 12 pages.
“Normalizing Text: A Java Tutorial by Oracle”, Retrieved from: <http://docs.oracle.com/javase/tutorial/i18n/text/normalizerapi.html> on Apr. 8, 2014, Nov. 11, 2006, 3 pages.
“Notice of Allowance”, U.S. Appl. No. 13/118,204, Jul. 8, 2014, 8 pages.
“Notice of Allowance”, U.S. Appl. No. 13/655,386, Apr. 25, 2014, 6 pages.
“QPinchGesture Class Reference”, Retrieved from <http://doc.qt.digia.com/4.6/qpinchgesture.html> on May 28, 2014, 2010, 6 pages.
Anson, “Pining for Windows Phone 7 controls? We got ya covered! [Announcing the first release of the Silverlight for Windows Phone Toolkit!]”, Retrieved from <http://blogs.msdn.com/b/delay/archive/2010/09/16/pining-for-windows-phone-7-controls-we-got-ya-covered-announcing-the-first-release-of-the-silverlight-for-windows-phone-toolkit.aspx> on May 30, 2014, Sep. 16, 2010, 17 pages.
“Final Office Action”, U.S. Appl. No. 13/224,258, Jul. 18, 2014, 39 pages.
“Final Office Action”, U.S. Appl. No. 13/228,876, Jul. 18, 2014, 15 pages.
“Foreign Office Action”, CN Application No. 201180071186.4, Jun. 13, 2014, 12 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/657,621, Jul. 18, 2014, 22 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/657,646, Aug. 12, 2014, 14 pages.
“Notice of Allowance”, U.S. Appl. No. 13/657,789, Aug. 4, 2014, 16 pages.
“Foreign Office Action”, CN Application No. 201210317470.1, Jun. 5, 2014, 12 pages.
“Final Office Action”, U.S. Appl. No. 13/345,383, Jul. 25, 2014, 26 pages.
“Final Office Action”, U.S. Appl. No. 13/118,265, Nov. 6, 2014, 19 pages.
“Final Office Action”, U.S. Appl. No. 13/118,288, Nov. 7, 2014, 14 pages.
“Final Office Action”, U.S. Appl. No. 13/228,888, Oct. 24, 2014, 29 pages.
“Final Office Action”, U.S. Appl. No. 13/228,945, Oct. 23, 2014, 24 pages.
“Foreign Office Action”, CN Application No. 201110429183.5, Aug. 21, 2014, 13 Pages.
“Foreign Office Action”, CN Application No. 201110454251.3, Oct. 21, 2014, 13 Pages.
“Non-Final Office Action”, U.S. Appl. No. 12/972,967, Nov. 6, 2014, 17 pages.
“Non-Final Office Action”, U.S. Appl. No. 12/983,106, Sep. 10, 2014, 19 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/118,321, Nov. 12, 2014, 33 pages.
“Non-Final Office Action”, U.S. Appl. No. 13/228,707, Nov. 13, 2014, 20 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/089,149, Nov. 3, 2014, 8 pages.
“Notice of Allowance”, U.S. Appl. No. 13/229,709, Sep. 2, 2014, 4 pages.
“Notice of Allowance”, U.S. Appl. No. 13/656,574, Sep. 23, 2014, 7 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/118,204, Sep. 10, 2014, 2 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/118,204, Oct. 2, 2014, 2 pages.
“Supplemental Notice of Allowance”, U.S. Appl. No. 13/118,204, Oct. 23, 2014, 3 pages.
Webmonkey “HTML Cheatsheet”, Retrieved From: <http://www.webmonkey.com/2010/02/html—cheatsheet> on Nov. 7, 2014, Feb. 15, 2010, 5 pages.
“Non-Final Office Action”, U.S. Appl. No. 14/109,779, Nov. 21, 2014, 9 pages.
Related Publications (1)
Number Date Country
20130063443 A1 Mar 2013 US