Skip to Main Content
https://jonmccormack.com/wp-content/uploads/2025/12/Screenshot-2025-12-26-at-2.39.24-PM-1440x793.png

Issues Patents

A selection of patents issues during 3 decades in the tech industry.

User interfaces for capturing and managing visual media

Media user interfaces are described, including user interfaces for capturing media (e.g., capturing a photo, recording a video), displaying media (e.g., displaying a photo, playing a video), editing media (e.g., modifying a photo, modifying a video), accessing media controls or settings (e.g., accessing controls or settings to capture photos or videos to capture videos), automatically adjusting media (e.g., automatically modifying a photo, automatically modifying a video), and automatically managing a media capture mode (e.g., a photo media capturing mode, a portrait media capturing mode, a video media capturing mode) based on a set of conditions.


System for standardizing updates of data on a plurality of electronic devices

An apparatus for standardizing data on two or more electronic devices, comprising: an intermediate server on which is stored a plurality of characterizations, wherein the plurality of characterizations includes a separate characterization for each of the two or more electronic devices; and a service provider that offers one or more back-end software modules to at least one of the two or more electronic devices, and wherein each of the one or more back-end software modules has data associated with it; wherein: a notification module stored on the intermediate server detects a change in the data associated with one of the one or more back-end software modules; as a result of an interaction with one of the two or more electronic devices, the intermediate server receives the change in the data associated with one of the one or more back-end software modules and creates an updated characterization for the one of the two or more electronic devices.


System and method for sharing objects among two or more electronic devices

The present invention relates generally to electronic devices with corresponding device DNA and specifically to such electronic devices that share objects by reference to this device DNA. The present invention includes sharing objects among two or more electronic devices with differing object processing capabilities. In particular, a plurality of descriptions of each of the two or more electronic devices and object meta-data, which describes objects, is referenced when objects are exchanged by the two or more electronic devices. For example, if a given electronic device requests an object that it can not process, the object may be transcoded so that this electronic device can process the object. The transcoding is a function of the electronic device’s description, the object’s object meta-data, and the intended use of the object.

System method and apparatus for portable digital identity

Two-way digital media devices typically store digital identifying data that identify the user to providers of content and interactive data. In the case of a Web browser of a personal computer, the digital identity is stored in the form of a plurality of cookies that are used by respective web sites to personalize the web site experience for each particular user. When a user is at a different computer, the digital identifying data is not available. In addition, other types of interactive devices, such as CATV settop boxes, cell phones, PDAs and the like, may not have enough non-volatile memory (persistent storage) to store the digital identifying data. In order to provide users with a portable digital identity, a digital identity server is provided as a server node on the Internet, which retrieves digital identifying data and downloads such digital identifying data to any device upon request. In such manner, the user’s digital identity is portable and available at any computer or other digital device that is being used. The system digital identity server permits devices without sufficient non-volatile memory storage to download a digital identity for temporary storage in volatile memory, thereby providing a digital identity in devices without non-volatile memory.

Gravity-based link assist

A user interface of an electronic content rendering device implements gravity-based link assist to enhance user experience when browsing linked content. As a user moves a pointer along a trajectory across various links and objects, gravitational fields surrounding the links and objects provide a pulling effect that draws the pointer toward these fields. Responsive to pointer deceleration being detected when the pointer resides within a gravitational field, the link assist repositions the pointer to a center of the link or object relative to the trajectory of the pointer within the field.

Touch input assist

A user interface of an electronic content rendering device implements input assistance to enhance user experience when browsing linked content. As a touch input moves along a trajectory, an input assistance application provides enhanced fields associated with various navigation elements as the touch input draws toward the navigation elements. Responsive to detecting deceleration of the touch input within a threshold distance of a navigation element, the input assistance application enhances the associated field


Adaptive gesture recognition

Systems, methods, and computer-readable media are disclosed for receiving sensor data indicative of one or more vibrational and/or environmental characteristics associated with a user device, a user of the user device, and/or an environment that includes the user device; determining a value for a metric representative of the one or more characteristics; determining a value of a gesture detection parameter based at least in part on the value of the metric; receiving input corresponding to a touch event detected at a touch-sensitive display of the device; and analyzing the input based at least in part on the value of the gesture detection parameter to determine whether the touch event corresponds to a particular type of gesture.


Adapting display fonts for reflective displays

Techniques for utilizing different versions of a same font when rendering subsequent portions of a content item. For instance, envision that a user requests to open an electronic book. In response to this request, a display controller may display the first page of the electronic book using a flashing update and, therefore, may display the text using a regular weight of a particular font. However, when the user subsequently requests to turn to the second page of the electronic book, the display controller (utilizing a non-flashing update) may update the display using a version of the same font having a lesser weight. Given that some level of bleeding with likely occur when using the non-flashing update, the lesser weight coupled with the bleeding may result in text that approximates the weight of the text of the first page of the electronic book


Method and apparatus for the modeling and query of database structures using natural language-like constructs

Computerized tools for modeling database designs and specifying queries of the data contained therein. Once it is determined that an information system needs to be created, the Fact Compiler of the present invention is invoked to create it. After creating the information system, the user creates a fact-tree as a prelude to generating queries to the system. After creating the fact-tree, the user verifies that it is correct using the Tree Interpreter of the present invention. Once the fact tree has been verified, the Query Mapper of the present invention is used to generate information system queries.