Patents by Inventor Madhur Joshi
Madhur Joshi 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).
-
Publication number: 20230401048Abstract: A particular method includes storing a manifest file and a parameters file at a data store. The manifest file and the parameters file are associated with a software deployment package. An application associated with the software deployment package is published to a first remote computing device and to a second remote computing device. The method includes receiving first parameter values from the first remote computing device and receiving second parameter values from the second remote computing device. The first parameter values are stored in a first region of the data store that is specific to the first computing device. The second parameter values are stored in a second region of the data store that is specific to the second computing device.Type: ApplicationFiled: June 12, 2023Publication date: December 14, 2023Inventors: Madhur Joshi, Crystal Hoyer, David Cox, Mohammed Parvez Shaikh, Emily B. Repperger, Yamini Jagadeesan, Muhammad Bilal Aslam, Clea Allington, Yishai Galatzer
-
Patent number: 11720336Abstract: A particular method includes storing a manifest file and a parameters file at a data store. The manifest file and the parameters file are associated with a software deployment package. An application associated with the software deployment package is published to a first remote computing device and to a second remote computing device. The method includes receiving first parameter values from the first remote computing device and receiving second parameter values from the second remote computing device. The first parameter values are stored in a first region of the data store that is specific to the first computing device. The second parameter values are stored in a second region of the data store that is specific to the second computing device.Type: GrantFiled: April 8, 2019Date of Patent: August 8, 2023Inventors: Madhur Joshi, Crystal Hoyer, David Cox, Mohammed Parvez Shaikh, Emily B. Repperger, Yamini Jagadeesan, Muhammad Bilal Aslam, Clea Allington, Yishai Galatzer
-
Patent number: 10678561Abstract: Techniques are described herein that are capable of virtualizing extension code (e.g., third-party extension code) in an application (e.g., a web application in a browser). A portal of an application is loaded. The portal has an extensibility point via which an extension is to enhance functionality of the application. The extension includes metadata and implementation code. A functionality that the implementation code is configured to provide with regard to the application is automatically determined. The metadata is automatically generated to indicate the functionality in response to the functionality being automatically determined. The metadata is loaded in response to the portal being loaded. Loading of the implementation code is delayed until an interaction indicator is received, in response to loading the metadata. The interaction indicator indicates that a user interaction occurs. The implementation code is loaded based at least in part on receipt of the interaction indicator.Type: GrantFiled: June 23, 2019Date of Patent: June 9, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Brad M. Olenick, Leon E. Welicki, Alvaro R. Dias, Madhur Joshi
-
Publication number: 20190310865Abstract: Techniques are described herein that are capable of virtualizing extension code (e.g., third-party extension code) in an application (e.g., a web application in a browser). A portal of an application is loaded. The portal has an extensibility point via which an extension is to enhance functionality of the application. The extension includes metadata and implementation code. A functionality that the implementation code is configured to provide with regard to the application is automatically determined. The metadata is automatically generated to indicate the functionality in response to the functionality being automatically determined. The metadata is loaded in response to the portal being loaded. Loading of the implementation code is delayed until an interaction indicator is received, in response to loading the metadata. The interaction indicator indicates that a user interaction occurs. The implementation code is loaded based at least in part on receipt of the interaction indicator.Type: ApplicationFiled: June 23, 2019Publication date: October 10, 2019Inventors: Brad M. Olenick, Leon E. Welicki, Alvaro R. Dias, Madhur Joshi
-
Publication number: 20190294424Abstract: A particular method includes storing a manifest file and a parameters file at a data store. The manifest file and the parameters file are associated with a software deployment package. An application associated with the software deployment package is published to a first remote computing device and to a second remote computing device. The method includes receiving first parameter values from the first remote computing device and receiving second parameter values from the second remote computing device. The first parameter values are stored in a first region of the data store that is specific to the first computing device. The second parameter values are stored in a second region of the data store that is specific to the second computing device.Type: ApplicationFiled: April 8, 2019Publication date: September 26, 2019Inventors: Madhur Joshi, Crystal Hoyer, David Cox, Mohammed Parvez Shaikh, Emily B. Repperger, Yamini Jagadeesan, Muhammad Bilal Aslam, Clea Allington, Yishai Galatzer
-
Patent number: 10389795Abstract: Computing systems, devices, and associated processes for distributed execution of extensions are disclosed herein. In one embodiment, a method includes receiving a user input at a client device for initiating an extension in a web page associated with a web site. In response to the received user input, a communication link between the client device and a remote computing facility can be established. The method can also include transmitting a request for initiating the extension, from the client device, to the remote computing facility via the established communication link and receiving, at the client device, data representing execution results of the requested extension from the remote computing facility.Type: GrantFiled: February 10, 2016Date of Patent: August 20, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Alvaro Dias, Brad Olenick, Julio Casal Terreros, Marck Robinson, Madhur Joshi, Yu Zhao, Vinela Pothineni, Wissam Zeidan
-
Patent number: 10331461Abstract: Techniques are described herein that are capable of virtualizing extension code (e.g., third-party extension code) in an application (e.g., a web application in a browser). A portal of an application is loaded. The portal has an extensibility point via which an extension is to enhance functionality of the application. The extension includes metadata and implementation code. A functionality that the implementation code is configured to provide with regard to the application is automatically determined. The metadata is automatically generated to indicate the functionality in response to the functionality being automatically determined. The metadata is loaded in response to the portal being loaded. Loading of the implementation code is delayed until an interaction indicator is received, in response to loading the metadata. The interaction indicator indicates that a user interaction occurs. The implementation code is loaded based at least in part on receipt of the interaction indicator.Type: GrantFiled: July 22, 2017Date of Patent: June 25, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Brad M. Olenick, Leon E. Welicki, Alvaro R. Dias, Madhur Joshi
-
Patent number: 10296317Abstract: A particular method includes storing a manifest file and a parameters file at a data store. The manifest file and the parameters file are associated with a software deployment package. An application associated with the software deployment package is published to a first remote computing device and to a second remote computing device. The method includes receiving first parameter values from the first remote computing device and receiving second parameter values from the second remote computing device. The first parameter values are stored in a first region of the data store that is specific to the first computing device. The second parameter values are stored in a second region of the data store that is specific to the second computing device.Type: GrantFiled: December 20, 2010Date of Patent: May 21, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Madhur Joshi, Crystal Hoyer, David Cox, Mohammed Parvez Shaikh, Emily B. Repperger, Yamini Jagadeesan, Muhammad Bilal Aslam, Clea Allington, Yishai Galatzer
-
Publication number: 20180032487Abstract: An SVG system for creating an SVG bundle of svg elements that adhere to a theme is provided. The SVG system accesses svg elements that are to be included in the bundle and accesses theme attributes of the theme. For each svg element, the SVG system retrieves the svg element, establishes a name for the svg element, modifies the svg element to use values for the theme attributes as specified by the theme, and stores the svg element and the established name in an SVG bundle. To use the SVG bundle, a web page includes a specification of values for theme attributes and a reference to an svg element. When the web page is rendered, the svg element is inserted into the web page at the location of the reference and is processed based on values of the theme attributes to generate a graphic for the web page.Type: ApplicationFiled: July 27, 2016Publication date: February 1, 2018Inventors: Lucas Stanford, Madhur Joshi, William Moy, Andrew Philip Birck
-
Publication number: 20170322822Abstract: Techniques are described herein that are capable of virtualizing extension code (e.g., third-party extension code) in an application (e.g., a web application in a browser). A portal of an application is loaded. The portal has an extensibility point via which an extension is to enhance functionality of the application. The extension includes metadata and implementation code. A functionality that the implementation code is configured to provide with regard to the application is automatically determined. The metadata is automatically generated to indicate the functionality in response to the functionality being automatically determined. The metadata is loaded in response to the portal being loaded. Loading of the implementation code is delayed until an interaction indicator is received, in response to loading the metadata. The interaction indicator indicates that a user interaction occurs. The implementation code is loaded based at least in part on receipt of the interaction indicator.Type: ApplicationFiled: July 22, 2017Publication date: November 9, 2017Inventors: Brad M. Olenick, Leon E. Welicki, Alvaro R. Dias, Madhur Joshi
-
Patent number: 9792354Abstract: A model for displaying multiple user interface elements such that each control includes a container that includes standard functionality across at least a majority of the user interface elements. For instance, such standard functionality might include a part status indication, a title, a content status indication, a command invocation function, a part resizing function, and so forth. The model may also provide for standardization of resizing of user interface elements. For a given user interface element, there would be a predetermined number of possible size and shapes, each corresponding to a different projection of data. For instance, all of the user interface elements on a screen may fall within the predetermined number of possible size and shapes, thereby allowing more functional layout of the user interface on the display.Type: GrantFiled: April 1, 2014Date of Patent: October 17, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Brad Olenick, Christopher Scrosati, Leon Ezequiel Welicki, Steven Sanderson, Alvaro Rahul Dias, Federico Silva Armas, Vishal R. Joshi, Tom Cox, Justin Beckwith, Jonathan Lucero, Kristofer John Owens, Stephen Michael Danton, Jonah Bush Sterling, Dina-Marie Ledonna Supino, Nafisa Bhojawala, Madhur Joshi, Karandeep Singh Anand, William J. Staples, Jesse David Francisco, Brendyn Alexander, Julio O. Casal
-
Patent number: 9766869Abstract: An installation package may have metadata concerning optional parameters for a software package to be installed. The metadata may be read by an installation system, and a user interface presented to a user for input on the parameters values. The installation system may store the parameters for later replication of the installation. The installation system may perform the installation on a local device or a remote device, and may further be capable of presenting the user interface on another device. In some embodiments, the metadata may be available to the installation system without having to open the installation package.Type: GrantFiled: January 16, 2009Date of Patent: September 19, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Vijay Sen, Clea Allington, Carlos Aguilar Mares, Bilal Alam, Saad Ladki, Nina Tang, Madhur Joshi
-
Patent number: 9754018Abstract: At least some embodiments described herein refer to the user of a rendering interpreter that receives data object(s) from code executing within a restricted environment container (such as an IFrame). The restricted environment container prevents the code from adversely impacting the performance and consistency of the user interface system as a whole, and also prevents the code from adversely impacting the performance of code running in other restricted environment containers.Type: GrantFiled: April 1, 2014Date of Patent: September 5, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Brad Olenick, Gilles C. J. A Zunino, William Y. Moy, Andrew Birck, Madhur Joshi, Brendyn Alexander, Tom Cox, Ifeanyi Echeruo, Jean-Sebastien Goupil
-
Patent number: 9740512Abstract: Techniques are described herein that are capable of virtualizing extension code (e.g., third-party extension code) in an application (e.g., a web application in a browser). A portal of an application that is associated with an extension is loaded. For instance, the portal may have extensibility points to enhance its functionality in a secure manner. The extension includes metadata and implementation code. The metadata is loaded. In response to the portal being loaded, the implementation code may not be loaded until a user interaction occurs.Type: GrantFiled: December 1, 2015Date of Patent: August 22, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Brad M. Olenick, Leon E. Welicki, Alvaro R. Dias, Madhur Joshi
-
Patent number: 9727636Abstract: A hierarchy of controls and parts, that are each in accordance with constraints of a computing executing context. A control is executable code that performs a function and which may impart a visualization. A part is a unit of visualization container that has its own visualization and/or shows visualizations from one or more compliant controls associated with the part.Type: GrantFiled: April 1, 2014Date of Patent: August 8, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Brad Olenick, Leon Ezequiel Welicki, Justin Beckwith, Tom Cox, Vishal R. Joshi, Nafisa Bhojawala, Alvaro Rahul Dias, Eric Hwa-Wei Wong, David Anson, Thao Doan, Stephen Michael Danton, Kristofer John Owens, Wai Man Yuen, Madhur Joshi, Bradley D. Millington, Brendyn Alexander, Jean-Sebastien Goupil, Ming Chen, Andrew Birck, Andrew Forget
-
Patent number: 9672276Abstract: A multi-act creation user interface element that is displayed when a user instructs a computing system to initiate creation of a resource that has multiple associated creation processing acts. For each of some or all of the creation processing acts, the multi-act creation user interface element causes a set of one or more controls to appear, which the user may then enter creation information into. The multi-step creation user interface element persists creation information so entered so that the creation information is available for further creation processing acts.Type: GrantFiled: April 1, 2014Date of Patent: June 6, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Leon Ezequiel Welicki, Brad Olenick, Vishal R. Joshi, Andrew Birck, Alvaro Rahul Dias, Guru Kumaraguru, Federico Silva Armas, Stephen Michael Danton, Brendyn Alexander, David Anson, Jean-Sebastien Guopil, Bradley D. Millington, Adam Abdelhamed, Jesse David Francisco, Wai Man Yuen, Jon Harris, Jonah Bush Sterling, Karandeep Singh Anand, William J. Staples, Madhur Joshi, Nathan J. Totten
-
Publication number: 20170104814Abstract: Computing systems, devices, and associated processes for distributed execution of extensions are disclosed herein. In one embodiment, a method includes receiving a user input at a client device for initiating an extension in a web page associated with a web site. In response to the received user input, a communication link between the client device and a remote computing facility can be established. The method can also include transmitting a request for initiating the extension, from the client device, to the remote computing facility via the established communication link and receiving, at the client device, data representing execution results of the requested extension from the remote computing facility.Type: ApplicationFiled: February 10, 2016Publication date: April 13, 2017Inventors: Alvaro Dias, Brad Olenick, Julio Casal Terreros, Marck Robinson, Madhur Joshi, Yu Zhao, Vinela Pothineni, Wissam Zeidan
-
Publication number: 20170010872Abstract: Techniques are described herein that are capable of virtualizing extension code (e.g., third-party extension code) in an application (e.g., a web application in a browser). A portal of an application that is associated with an extension is loaded. For instance, the portal may have extensibility points to enhance its functionality in a secure manner. The extension includes metadata and implementation code. The metadata is loaded. In response to the portal being loaded, the implementation code may not be loaded until a user interaction occurs.Type: ApplicationFiled: December 1, 2015Publication date: January 12, 2017Inventors: Brad M. Olenick, Leon E. Welicki, Alvaro R. Dias, Madhur Joshi
-
Patent number: 9483549Abstract: The management of application state storage associated with a hierarchical application. The hierarchical application includes multiple parent user interface elements, each of at least some having child user interface elements arranged in a corresponding hierarchy. The user may navigate through the hierarchical application. For instance, by selecting a child user interface element of a first parent user interface element having a first hierarchy of child user interface elements, the user might navigate to (and potentially also create) a second parent user interface element having a second hierarchy of child user interface elements. A hierarchical storage agent manages the state of the hierarchical application. The hierarchical storage agent provides application state to a remote storage over an application program interface in a manner that preserves at least some of the hierarchy of one or more parent user interface elements of the hierarchical application.Type: GrantFiled: April 1, 2014Date of Patent: November 1, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Brad Olenick, Federico Silva Armas, William Y. Moy, Madhur Joshi, Stephen Michael Danton
-
Patent number: 9460194Abstract: The management of application state storage associated with a hierarchical application. The hierarchical application includes multiple parent user interface elements, each of at least some having child user interface elements arranged in a corresponding hierarchy. The user may navigate through the hierarchical application. For instance, by selecting a child user interface element of a first parent user interface element having a first hierarchy of child user interface elements, the user might navigate to (and potentially also create) a second parent user interface element having a second hierarchy of child user interface elements. A hierarchical storage agent manages the state of the hierarchical application. The hierarchical storage agent provides application state to a remote storage over an application program interface in a manner that preserves at least some of the hierarchy of one or more parent user interface elements of the hierarchical application.Type: GrantFiled: April 1, 2014Date of Patent: October 4, 2016Assignee: Microsoft Technology Licensing, LLCInventors: Brad Olenick, Federico Silva Armas, William Y. Moy, Madhur Joshi, Stephen Michael Danton