Patents by Inventor Erik Kay

Erik Kay has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 9779755
    Abstract: A computer-implemented technique can include establishing an audio communication session between first and second computing devices and obtaining, by the first computing device, an audio input signal using audio data captured by a microphone. The first computing device can analyze the audio input signal to detect a speech input by its first user and can determine a duration of a detection period from when the audio input signal was obtained until the analyzing has completed. The first computing device can then transmit, to the second computing device, (i) a portion of the audio input signal beginning at a start of the speech input and (ii) the detection period duration, wherein receipt of the portion of the audio input signal and the detection period duration causes the second computing device to accelerate playback of the portion of the audio input signal to compensate for the detection period duration.
    Type: Grant
    Filed: August 25, 2016
    Date of Patent: October 3, 2017
    Assignee: GOOGLE INC.
    Inventors: Erik Kay, Jonas Erik Lindberg, Serge Lachapelle, Henrik Lundin
  • Patent number: 9769258
    Abstract: A method for synchronizing a set of one or more individual web apps and/or browser extensions to a user's computing device includes sending, from a server, one or more application stubs corresponding to the individual web apps or browser extensions in the set to the computing device. The method further includes establishing the ordered synchronization schedule prioritizing synchronization of the individual web apps or browser extensions in the set by size and/or a likelihood of use of the individual web apps or browser extensions on the user's computing device. The method involves sending, from the server to the computing device, application data including executable code associated with the individual web apps or browser extensions to synchronize the individual web apps or browser extensions in the set according to the ordered synchronization sequence.
    Type: Grant
    Filed: December 18, 2014
    Date of Patent: September 19, 2017
    Assignee: GOOGLE INC.
    Inventor: Erik Kay
  • Patent number: 9535755
    Abstract: Access is provided to a first tier of limited persistent storage at a server. A first set of data from the first tier is synchronized across devices associated with a user account. Access is provided to a second tier of persistent storage on a local, tangible non-volatile storage medium, and to a third tier of temporary storage on a local, tangible volatile storage medium. A web browser receives a storage request from a web application or browser extension. The request includes a type of a tier of data storage associated with a feature of the web application or browser extension. The type includes at least one of the first tier of remote limited persistent storage, the second tier of local persistent storage, or the third tier of local temporary storage. At least one feature of the web application or browser extension is associated with the tier of data storage.
    Type: Grant
    Filed: March 9, 2012
    Date of Patent: January 3, 2017
    Assignee: Google Inc.
    Inventors: Erik Kay, Mihai Parparita, Benjamin Kalman, Ben Olmstead
  • Patent number: 9477534
    Abstract: According to one general aspect, a computer-implemented method may include implementing, in a web browser executing on a computing device, a first extension process. The first extension process may be functionally isolated from a second extension process that is implemented in the web browser. The method may also include presenting, by the first extension process, a public messaging interface. The method may further include receiving, by the first extension process via the public messaging interface, a messaging request from the second extension process, the messaging request including a unique extension ID of the second extension process. The method may also include determining, by the public messaging interface, whether to accept or reject the messaging request based on the first unique extension ID.
    Type: Grant
    Filed: May 18, 2011
    Date of Patent: October 25, 2016
    Assignee: Google Inc.
    Inventors: Matthew Perry, Aaron Boodman, Erik Kay
  • Patent number: 9465596
    Abstract: A method and system for providing cross system installation of applications, include providing for installation, via a server, a natively operating application coded only with web technologies, and providing for installation a single runtime environment that provides the natively operating application access to computer system-level services that are not available to web applications. The single runtime environment controls the installation and uninstallation of the natively operating application, and the natively operating application is configured to execute independent of a web browser.
    Type: Grant
    Filed: October 10, 2012
    Date of Patent: October 11, 2016
    Assignee: Google Inc.
    Inventors: Erik Kay, Rahul Roy-Chowdhury, Chee Heng Chew
  • Patent number: 9451039
    Abstract: A system includes a memory configured to store executable code and a processor operably coupled to the memory. The processor is configured to execute the code to receive a request from a developer of a first web application to provide a notification corresponding to the first web application, authenticate the developer using a client identifier, after authenticating the developer, receive a content of the notification and a first user identifier, and provide the content of the notification to at least one of a plurality of computing devices associated with the first user identifier, based on an account associated with the first user identifier. The system syncs the notification and a plurality of computing devices associated with the first user identifier, based on the account.
    Type: Grant
    Filed: April 11, 2014
    Date of Patent: September 20, 2016
    Assignee: Google Inc.
    Inventors: Erik Kay, Antony John Sargent, Alexandra Levich, Munjal Doshi, Zhenhai Lin, Glen Murphy, Rahul Roy-Chowdhury
  • Patent number: 9417793
    Abstract: According to one general aspect, a computer-implemented method for managing global keyboard shortcuts is described. The method determines a web application or a browser extension accessible for execution by a browser of a client device. A user interface including available shortcut actions for the web application or the browser extension is provided, and a designation of a keyboard shortcut for an action from the available shortcut actions is received via the user interface. An association is created between the designated keyboard shortcut, the action, and a user account. The designated keyboard shortcut, the action, and the association may be stored on a server, and the designated keyboard shortcut, the action, and the association may be synced based on the user account.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: August 16, 2016
    Assignee: Google Inc.
    Inventors: Erik Kay, Finnur Thorarinsson, Glen Murphy
  • Patent number: 9384073
    Abstract: A method for mediating messages between at least two browser extensions using a web browser of a computing device includes receiving a request from a first browser extension via a messaging application programming interface provided by the web browser, wherein a receiver of the request is a second browser extension determined by the messaging application programming interface based on a requested functionality included in the request from the first browser extension. The method includes sending, using the messaging application programming interface, the request to the second browser extension when the requested functionality is available in the second browser extension, and sending an error message to the first browser extension using the messaging application programming interface when the requested functionality is not available.
    Type: Grant
    Filed: March 1, 2012
    Date of Patent: July 5, 2016
    Assignee: Google Inc.
    Inventors: Dominic Mazzoni, Erik Kay
  • Patent number: 9348663
    Abstract: An extension schema validator may be executable within an extension process of an extension of a browser application, and may be configured to validate the extension with respect to an extension application program interface (API) that is provided in conjunction with the browser application for implementation of the extension. A browser schema validator may be executable within a browser process of the browser application, and may be configured to validate the extension with respect to the extension API. Successful validation of the extension by the extension schema validator prior to attempting validation of the extension by the browser schema validator may be required.
    Type: Grant
    Filed: May 1, 2014
    Date of Patent: May 24, 2016
    Assignee: Google Inc.
    Inventors: Aaron Boodman, Rafael Weinstein, Erik Kay, Matthew Perry
  • Patent number: 9274913
    Abstract: A method and system for monitoring events related to web browser extensions includes storing a set of events for which a browser extension integrated in a web browser application registers a listener. The browser extension integrated in the web browser application is executed. Upon the occurrence of an event related to the browser extension, an invisible event page associated with the browser extension is loaded if the event is one of the set of events. Using the invisible event page, a function related to a visible object of the browser extension is executed. The invisible event page is unloaded from the browser after receiving an acknowledgement from the browser extension.
    Type: Grant
    Filed: March 8, 2012
    Date of Patent: March 1, 2016
    Assignee: Google Inc.
    Inventors: Erik Kay, Mihai Parparita, Tessa MacDuff, Aaron Boodman, Matthew Perry
  • Patent number: 9177150
    Abstract: A computer implemented method includes generating a first cryptographic hash based on at least one setting associated with a browser at a first time, storing the first cryptographic hash as a first bit string, generating a second cryptographic hash as a second bit string, wherein the second cryptographic hash is based on the at least one setting associated with the browser at a second time, determining that a setting associated with the browser has changed and that the setting change was made outside of the browser based on a comparison of the first and second bit strings, and if the setting change was made outside of the browser, setting the setting to a default value.
    Type: Grant
    Filed: December 4, 2013
    Date of Patent: November 3, 2015
    Assignee: Google Inc.
    Inventors: Erik Kay, Robert Shield, Marc-Andre Decoste, Dominic Battre, William James Budge, Jr.
  • Patent number: 9135445
    Abstract: A method for installing an offered web application or browser extension in a web browser includes receiving a user action on a website located at a first internet domain. Information about the offered web application or browser extension not currently installed in the web browser is displayed in response to the user action. The displayed information is provided by a digital marketplace located at a second internet domain distinct from the first internet domain. A correspondence of the displayed information to the offered web application or browser extension is ensured through functionality provided by the web browser. An indication to install the offered web application or browser extension is received from a user, and the web application or browser extension is installed in response to the received indication.
    Type: Grant
    Filed: March 19, 2012
    Date of Patent: September 15, 2015
    Assignee: Google Inc.
    Inventors: Erik Kay, Mihai Parparita, Aaron Boodman, Rahul Roy-Chowdhury
  • Publication number: 20150222664
    Abstract: A system includes an extension manager configured to cause at least one processor to execute multiple extensions in parallel that each attempt to modify a network request related to a webpage, and a conflict manager. The conflict manager is configured to cause the at least one processor to resolve conflicts among attempts by the multiple extensions to modify the network request. The conflicts are resolved using a set of precedence criteria and conflict rules. The conflict rules include for example logic that specifies that the network request is cancelled if any of the multiple extensions attempt to cancel the request. As another example, if at least two of the multiple extensions attempt to redirect the network request to at least two different URLs, the system determines which one extension is allowed to redirect the network request, and allows only the attempt by the one extension to redirect the network request.
    Type: Application
    Filed: March 28, 2012
    Publication date: August 6, 2015
    Applicant: GOOGLE INC.
    Inventors: Dominic Battre, Jochen Eisinger, Bernhard Bauer, Matthew Perry, Erik Kay
  • Publication number: 20150222512
    Abstract: A method and system for monitoring events related to web browser extensions includes storing a set of events for which a browser extension integrated in a web browser application registers a listener. The browser extension integrated in the web browser application is executed. Upon the occurrence of an event related to the browser extension, an invisible event page associated with the browser extension is loaded if the event is one of the set of events. Using the invisible event page, a function related to a visible object of the browser extension is executed. The invisible event page is unloaded from the browser after receiving an acknowledgement from the browser extension.
    Type: Application
    Filed: March 8, 2012
    Publication date: August 6, 2015
    Applicant: GOOGLE INC.
    Inventors: Erik Kay, Mihai Parparita, Tessa MacDuff, Aaron Boodman, Matthew Perry
  • Publication number: 20150220239
    Abstract: According to one general aspect, a computer-implemented method for managing global keyboard shortcuts is described. The method determines a web application or a browser extension accessible for execution by a browser of a client device. A user interface including available shortcut actions for the web application or the browser extension is provided, and a designation of a keyboard shortcut for an action from the available shortcut actions is received via the user interface. An association is created between the designated keyboard shortcut, the action, and a user account. The designated keyboard shortcut, the action, and the association may be stored on a server, and the designated keyboard shortcut, the action, and the association may be synced based on the user account.
    Type: Application
    Filed: September 30, 2011
    Publication date: August 6, 2015
    Applicant: GOOGLE INC.
    Inventors: ERIK KAY, FINNUR THORARINSSON, GLEN MURPHY
  • Publication number: 20150222700
    Abstract: A computer-implemented method for providing capability indicators includes establishing, by a processor of a computing system, a digital marketplace for digital goods, such as web applications and browser extensions. The method includes determining, by the processor, that a first digital good of the digital goods includes a specified set of modes, where the specified set of modes includes executing the first digital good without access to a network, and providing to a client device, by the processor, instructions to display a graphical indicator representing at least one of the specified set of modes, wherein the graphical indicator is associated with a graphical icon representing the first digital good in the digital marketplace.
    Type: Application
    Filed: January 6, 2012
    Publication date: August 6, 2015
    Applicant: GOOGLE INC.
    Inventors: Erik Kay, Yoyo Zhou, Mihai Parparita, Rahul Roy-Chowdhury, Glen Murphy
  • Patent number: 9098710
    Abstract: According to one general aspect, a computer-implemented method for implementing default security features for web applications and browser extensions includes receiving a request to include a web application or a web browser extension in a digital marketplace. A determination is made if the web application or the web browser extension conforms to default security features, wherein the default security features include a prohibition against running in-line script on web pages. The web application or the browser extension is included in the digital marketplace if the web application or the browser extension conforms to the default security features.
    Type: Grant
    Filed: September 17, 2013
    Date of Patent: August 4, 2015
    Assignee: GOOGLE INC.
    Inventors: Erik Kay, Adam Barth
  • Publication number: 20150205489
    Abstract: A computer-implemented method includes providing a user interface in a browser application, displaying on the user interface one or more applications installed in the browser application and enabling interaction with the installed applications through the user interface in the browser application.
    Type: Application
    Filed: May 18, 2011
    Publication date: July 23, 2015
    Applicant: GOOGLE INC.
    Inventors: Glen Murphy, Nicholas Jitkoff, Erik Kay, Aaron Boodman, Gregor Hochmuth, Finnur Thorarinsson
  • Publication number: 20150207852
    Abstract: A computer-implemented method includes running a background element that is an invisible element in a browser application, where the background element includes a declared association with an application and includes instructions related to one or more visible elements of the application in the browser application and executing the instructions on the background element to perform a function related to the one or more visible elements of the application in the browser application.
    Type: Application
    Filed: May 18, 2011
    Publication date: July 23, 2015
    Applicant: GOOGLE INC.
    Inventors: Aaron Boodman, Erik Kay, Matthew Perry, Rafael Weinstein, Andrew T. Wilson
  • Publication number: 20150207817
    Abstract: According to one general aspect, a computer-implemented method may include implementing, in a web browser executing on a computing device, a first extension process. The first extension process may be functionally isolated from a second extension process that is implemented in the web browser. The method may also include presenting, by the first extension process, a public messaging interface. The method may further include receiving, by the first extension process via the public messaging interface, a messaging request from the second extension process, the messaging request including a unique extension ID of the second extension process. The method may also include determining, by the public messaging interface, whether to accept or reject the messaging request based on the first unique extension ID.
    Type: Application
    Filed: May 18, 2011
    Publication date: July 23, 2015
    Applicant: GOOGLE INC.
    Inventors: Matthew Perry, Aaron Boodman, Erik Kay