Patents by Inventor William J. Staples

William J. Staples 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: 10514824
    Abstract: Techniques are described herein that are capable of providing a pivot-based tile gallery with an adapted tile (e.g., in an application, such as a web application in a browser). A pivot is code that enables selection of a subset of tiles from multiple subsets of tiles. A pivot element is an interface element that represents a pivot. For instance, selection of the subset of tiles via the pivot may cause a user interface (UI) representation of the tile gallery to include UI representations of the tiles in the selected subset (e.g., and not UI representations of the tiles that are not included in the selected subset). An adapted tile is a tile that includes a wrapper and a second tile. The wrapper wraps the second tile. For instance, the wrapper may enable the adapted tile to use the second tile to implement functionality of an aspect of a resource.
    Type: Grant
    Filed: December 2, 2015
    Date of Patent: December 24, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Jesse D. Francisco, Leon E. Welicki, Mo Wang, Joshua Prentice Keckley, Adam M. Abdelhamed, Brad M. Olenick, Stephen Siciliano, William J. Staples, Jonathan Harris, Karandeep Singh Anand, Christopher Scrosati, Angela Moulden
  • Patent number: 9792354
    Abstract: 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: Grant
    Filed: April 1, 2014
    Date of Patent: October 17, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: 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: 9785320
    Abstract: A gallery user interface element that includes multiple selectable service user interface elements. Each of the selectable service user interface elements, when selected, initiates a corresponding predetermined action. Thus, the gallery may be used to initiate any number of predetermined actions by selecting appropriate service user interface elements. The predetermined actions may be performed by a number of user interface elements that are collectively offered by a variety of different applications, application extensions, or the system itself. The predetermined actions may include at least one predetermined action that extends an extendible canvas with one or more additional user interface elements. The gallery may include multiple pinnable elements and have different versions depending on a context in which the gallery was opened.
    Type: Grant
    Filed: June 30, 2014
    Date of Patent: October 10, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Nathan J. Totten, Jesse David Francisco, Alaa Shaker, Guruprasad M. Airy, Vishal R. Joshi, Leon Ezequiel Welicki, Jon Harris, Jonah Bush Sterling, Sunay Vaishnav, Jamey Baumgardt, Timothy Michael McBride, Alvaro Rahul Dias, William J. Staples, Karandeep Singh Anand, Adam Mohamed Abdelhamed, Stephen Michael Danton, Syed Nadir Ahmed, Brad Olenick
  • Patent number: 9672276
    Abstract: 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: Grant
    Filed: April 1, 2014
    Date of Patent: June 6, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: 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: 20170010764
    Abstract: Techniques are described herein that are capable of providing a pivot-based tile gallery with an adapted tile (e.g., in an application, such as a web application in a browser). A pivot is code that enables selection of a subset of tiles from multiple subsets of tiles. A pivot element is an interface element that represents a pivot. For instance, selection of the subset of tiles via the pivot may cause a user interface (UI) representation of the tile gallery to include UI representations of the tiles in the selected subset (e.g., and not UI representations of the tiles that are not included in the selected subset). An adapted tile is a tile that includes a wrapper and a second tile. The wrapper wraps the second tile. For instance, the wrapper may enable the adapted tile to use the second tile to implement functionality of an aspect of a resource.
    Type: Application
    Filed: December 2, 2015
    Publication date: January 12, 2017
    Inventors: Jesse D. Francisco, Leon E. Welicki, Mo Wang, Joshua Prentice Keckley, Adam M. Abdelhamed, Brad M. Olenick, Stephen Siciliano, William J. Staples, Jonathan Harris, Karandeep Singh Anand, Christopher Scrosati, Angela Moulden
  • Patent number: 9378011
    Abstract: A system and method for managing application version changes on a network server. A backup is made of a deployed application version. When an update version of the application is to be deployed, a backup of the current application, including dynamic data, is performed. The update version is deployed and automatically monitored. If the update version is determined to be healthy, it is backed up. If it is determined to not be healthy, the previous version is automatically retrieved and deployed. An application skeleton may be automatically generated to facilitate comparison and backups of the application.
    Type: Grant
    Filed: March 19, 2009
    Date of Patent: June 28, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Saad Ladki, Vijay Sen, Clea Allington, William J. Staples
  • Publication number: 20150286370
    Abstract: A gallery user interface element that includes multiple selectable service user interface elements. Each of the selectable service user interface elements, when selected, initiates a corresponding predetermined action. Thus, the gallery may be used to initiate any number of predetermined actions by selecting appropriate service user interface elements. The predetermined actions may be performed by a number of user interface elements that are collectively offered by a variety of different applications, application extensions, or the system itself. The predetermined actions may include at least one predetermined action that extends an extendible canvas with one or more additional user interface elements. The gallery may include multiple pinnable elements and have different versions depending on a context in which the gallery was opened.
    Type: Application
    Filed: June 30, 2014
    Publication date: October 8, 2015
    Inventors: Nathan J. Totten, Jesse David Francisco, Alaa Shaker, Guruprasad M. Airy, Vishal R. Joshi, Leon Ezequiel Welicki, Jon Harris, Jonah Bush Sterling, Sunay Vaishnav, Jamey Baumgardt, Timothy Michael McBride, Alvaro Rahul Dias, William J. Staples, Karandeep Singh Anand, Adam Mohamed Abdelhamed, Stephen Michael Danton, Syed Nadir Ahmed, Brad Olenick
  • Publication number: 20150095813
    Abstract: 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: Application
    Filed: April 1, 2014
    Publication date: April 2, 2015
    Inventors: 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 Goupil, 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: 20150095842
    Abstract: A user interface that includes a canvas that extends in one direction. An activation mechanism may be used to generate an initial blade in the canvas. A blade is a user interface element that occupies a portion of the canvas in the dimension along which the canvas extends. The blade includes multiple selectable elements that each have a corresponding blade. The user interface includes an extension mechanism configured to present a corresponding subsequent blade on the canvas perhaps adjacent to the prior blade when a selected element from a prior blade is selected, the subsequent blade also including multiple selectable elements that may be hierarchically structured. In this manner, blade chains may be created representative of a journey that the user has taken since initiating the first blade.
    Type: Application
    Filed: April 1, 2014
    Publication date: April 2, 2015
    Inventors: Stephen Michael Danton, Vishal R. Joshi, Karandeep Singh Anand, William J. Staples, Nafisa Bhojawala, Brendyn Alexander, Brad Olenick, Jonah Bush Sterling, Leon Ezequiel Welicki, Madhur Joshi, Jon Harris, Justin Beckwith
  • Publication number: 20150095846
    Abstract: A user interface that has a canvas that is extendable in an extendable dimension and on which multiple selectable elements may be placed. In this context, when a selecting control is associated with a particular selectable element, and further user gestures are provided, a pan detection mechanism is configured to distinguish between an intent to pan the canvas and an intent to select the particular selectable element. When a selecting control is associated with a particular orthogonally scrollable element, the pan detection mechanism may be distinguish between an intent to pan the canvas and an intent to scroll the orthogonally scrollable element in a direction perpendicular to the extendible dimension of the canvas.
    Type: Application
    Filed: April 1, 2014
    Publication date: April 2, 2015
    Inventors: Stephen Michael Danton, Kristofer John Owens, Jonah Bush Sterling, Jesse David Francisco, Karandeep Singh Anand, William J. Staples, Vishal R. Joshi, Leon Ezequiel Welicki, Justin Beckwith, Brad Olenick, Madhur Joshi, Wai Man Yuen, Lucas Stanford, Roger Philip Wong
  • Publication number: 20150095811
    Abstract: 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: Application
    Filed: April 1, 2014
    Publication date: April 2, 2015
    Inventors: 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
  • Publication number: 20150095812
    Abstract: Computing systems in which multiple non-context-sensitive or core commands may be initiated from each of a number of different user interface contexts. There are also multiple context-sensitive mechanism for visualizing the commands depending on which of the multiple possible user interface contexts that the commands appear. At least some embodiments described herein also related to the presentation of dialogs at various stages of the command lifecycle without the system needing to know the underlying operations of the command, and allowing the developer to specify when dialogs are to appear in that lifecycle.
    Type: Application
    Filed: April 1, 2014
    Publication date: April 2, 2015
    Inventors: Andrew Birck, Brad Olenick, Leon Ezequiel Welicki, Nafisa Bhojawala, Stephen Michael Danton, Jonathan Lucero, Dina-Marie Ledonna Supino, Jesse David Francisco, Vishal R. Joshi, Karandeep Singh Anand, William J. Staples, Madhur Joshi, Julio O. Casal, Jonah Bush Sterling
  • Publication number: 20130332865
    Abstract: A user interface that includes an activity initiation area that includes an activity initiation control that may be interacted with in order to initiate respective activities, and a notification area in which one or more notifications related to the activity may be displayed. The notification area is spatially related to the activity initiation control in a fixed manner for multiple activities. The activity initiation area may appear along a lower boundary of the display much as a partially pulled out drawer as viewed from above. The notification area may also appear along the lower boundary of the display, but extend further vertically, much as a fully pulled out drawer as viewed from above. This helps give a contextual understanding of the subject matter of the notifications in relation to the activities that have been, or may be, initiated from the activity initiation area.
    Type: Application
    Filed: September 12, 2012
    Publication date: December 12, 2013
    Applicant: MICROSOFT CORPORATION
    Inventors: Stephen Michael Danton, Jonah B. Sterling, Michael Bach, Jefferson King, Jesse David Francisco, Adam Mohamed Abdelhamed, Mark S. D'Urso, Jonathan Harris, Karandeep Singh Anand, Bharat Ahluwalia, S. Morris Brown, William J. Staples, Dina-Marie Ledonne Supino
  • Patent number: 8392911
    Abstract: Facilitating installation of additional functionality on a web server. The method includes at a data store, receiving a request from a client to access programmatic code units. The data store includes programmatic code units. The programmatic code units are configured to provide additional web server functionality when installed at a web server. The client is distinct and separate from the data store. The method further includes, at the data store, providing information about one or more programmatic code units to the client. Input is received from the client selecting one or more programmatic code units to be installed on a web server. The web server is separate and distinct from both the data store and the client. The one or more selected programmatic code units are sent to the web server, where after the one or more selected programmatic code units are installed on the web server.
    Type: Grant
    Filed: May 16, 2008
    Date of Patent: March 5, 2013
    Assignee: Microsoft Corporation
    Inventors: Brian Delahunty, Carlos Aguilar Mares, Nitasha Verma, Robert J. Lucero, Mai-Ian T. Bukovec, William J. Staples, Crystal L. Hoyer, Andrew Philip Birck
  • Publication number: 20100242032
    Abstract: A system and method for managing application version changes on a network server. A backup is made of a deployed application version. When an update version of the application is to be deployed, a backup of the current application, including dynamic data, is performed. The update version is deployed and automatically monitored. If the update version is determined to be healthy, it is backed up. If it is determined to not be healthy, the previous version is automatically retrieved and deployed. An application skeleton may be automatically generated to facilitate comparison and backups of the application.
    Type: Application
    Filed: March 19, 2009
    Publication date: September 23, 2010
    Applicant: Microsoft Corporation
    Inventors: Saad Ladki, Vijay Sen, Clea Allington, William J. Staples
  • Patent number: 7730475
    Abstract: Methods, systems, and computer program products for editing configuration data such that alterations in one representation of the configuration data are reflected in one or more other representations of the configuration data. The altered configuration data may take effect without having to restart a corresponding program module. Multiple alterations to the configuration data may be consolidated. A differencing operation may be used to identify an altered portion of the configuration data. For one or more altered portions, an “updategram” may be generated and used to update a multiple program modules at various interconnected computer systems. A history of alterations to configuration data also may be maintained, making it possible to revert to an earlier version of the configuration data. Erroneous data may be ignored. Access to updated representations of the configuration data may be provided at a configuration management interface.
    Type: Grant
    Filed: October 14, 2005
    Date of Patent: June 1, 2010
    Assignee: Microsoft Corporation
    Inventors: Richard A. Ersek, Robert M. Craig, William J. Staples, Mohit Srivastava, Varsha Jayasimha, Stephen L. Rakonza
  • Publication number: 20090327460
    Abstract: An application request router that routes incoming application message to various servers in a network farm, even though the original network request itself does not directly specify which server is to handle the request. The application request routing module uses intra-farm routing policy and characteristics of the request itself to identify which of the servers is to handle the message and then dispatches the message to the appropriate server. This allows a user to reconfigure the network farm by reconfiguring the capabilities of the servers in the network farm, and then altering the routing policy accordingly to take advantage of the reconfigured network farm capabilities.
    Type: Application
    Filed: June 27, 2008
    Publication date: December 31, 2009
    Applicant: Microsoft Corporation
    Inventors: Won Suk Yoo, Anil K. Ruia, Michael E. Brown, William J. Staples
  • Publication number: 20090288081
    Abstract: Facilitating installation of additional functionality on a web server. The method includes at a data store, receiving a request from a client to access programmatic code units. The data store includes programmatic code units. The programmatic code units are configured to provide additional web server functionality when installed at a web server. The client is distinct and separate from the data store. The method further includes, at the data store, providing information about one or more programmatic code units to the client. Input is received from the client selecting one or more programmatic code units to be installed on a web server. The web server is separate and distinct from both the data store and the client. The one or more selected programmatic code units are sent to the web server, where after the one or more selected programmatic code units are installed on the web server.
    Type: Application
    Filed: May 16, 2008
    Publication date: November 19, 2009
    Applicant: Microsoft Corporation
    Inventors: Brian Delahunty, Carlos Aguilar Mares, Nitasha Verma, Robert J. Lucero, Mai-Ian T. Bukovec, William J. Staples, Crystal L. Hoyer, Andrew Philip Birck
  • Publication number: 20090089401
    Abstract: Described is a technology in which media content is sent to clients in partial pieces, so that a server may control how clients view (and/or hear) the media content. A client requests partial content, and the server allows or disallows the request based upon one or more various conditions, as evaluated against a playlist provided (e.g., by a playlist provider) for that client. For example, the playlist may specify that the client cannot skip content, whereby the server disallows a request for a piece of content that skips over other content. Session related data may be kept to track the content sent to the client. Media content may be sent based on a dynamic condition, and/or the playlist may be dynamically adapted. A piece of media content may comprise an advertisement, which may be custom-selected for that client, such as based upon user profile data and/or client location information.
    Type: Application
    Filed: March 7, 2008
    Publication date: April 2, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Geqiang Zhang, Vishal Sood, Christopher G. Knowlton, William J. Staples
  • Patent number: 6990656
    Abstract: Methods, systems, and computer program products for editing configuration data such that alterations in one representation of the configuration data are reflected in one or more other representations of the configuration data. The altered configuration data may take effect without having to restart a corresponding program module. Multiple alterations to the configuration data may be consolidated. A differencing operation may be used to identify an altered portion of the configuration data. For one or more altered portions, an “updategram” may be generated and used to update a multiple program modules at various interconnected computer systems. A history of alterations to configuration data also may be maintained, making it possible to revert to an earlier version of the configuration data. Erroneous data may be ignored. Access to updated representations of the configuration data may be provided at a configuration management interface.
    Type: Grant
    Filed: June 27, 2002
    Date of Patent: January 24, 2006
    Assignee: Microsoft Corporation
    Inventors: Richard A. Ersek, Robert M. Craig, William J. Staples, Mohit Srivastava, Varsha Jayasimha, Stephen L. Rakonza