Merging modifications to user interface components while preserving user customizations
First Claim
Patent Images
1. A method comprising:
- providing a computing system;
displaying, by the computing system, a customized user interface (UI) component, the customized UI component being a version of a UI component to which client customizations have been applied, the UI component being a component of a UI of an application, wherein a customized interface definition defines the customized UI component;
modifying a solution set, the solution set comprising one or more solutions that modify the UI component, and modification including adding a new solution to the solution set, wherein adding the new solution to the solution set comprises;
receiving a change list that specifies changes;
generating a new non-customized interface definition by applying applicable changes to a non-customized interface definition, the non-customized interface definition being an interface definition that defines a version of the UI component that results from applying the modifications provided by each solution in the solution set to a base version of the UI component; and
after applying the applicable changes to the non-customized interface definition, generating a new customized interface definition by applying changes in a customization change list to the new non-customized interface definition, the customization change list expressing the client customizations, the new customized interface definition defining a new customized UI component; and
after the solution set is modified, displaying, by the computing system, the new customized UI component, the new customized UI component being a version of the UI component to which modifications provided by solutions in the solution set are applied and to which the client customizations remain applied to the UI component, the client customizations remaining applied to the UI component without manually re-applying the client customizations to the UI component.
2 Assignments
0 Petitions
Accused Products
Abstract
An application displays a user interface (UI) component. A client can apply customizations to this UI component. After the client applies customizations to the UI component, the client modifies a solution set containing solutions that modify the UI component. After the client modifies the solution set, the application displays a new version of the UI component. Modifications provided by the solutions in the solution set are applied to the new version of the UI component. In addition, the customizations remain applied to the UI component without the client manually re-applying the customizations to the UI component.
380 Citations
15 Claims
-
1. A method comprising:
-
providing a computing system; displaying, by the computing system, a customized user interface (UI) component, the customized UI component being a version of a UI component to which client customizations have been applied, the UI component being a component of a UI of an application, wherein a customized interface definition defines the customized UI component; modifying a solution set, the solution set comprising one or more solutions that modify the UI component, and modification including adding a new solution to the solution set, wherein adding the new solution to the solution set comprises; receiving a change list that specifies changes; generating a new non-customized interface definition by applying applicable changes to a non-customized interface definition, the non-customized interface definition being an interface definition that defines a version of the UI component that results from applying the modifications provided by each solution in the solution set to a base version of the UI component; and after applying the applicable changes to the non-customized interface definition, generating a new customized interface definition by applying changes in a customization change list to the new non-customized interface definition, the customization change list expressing the client customizations, the new customized interface definition defining a new customized UI component; and after the solution set is modified, displaying, by the computing system, the new customized UI component, the new customized UI component being a version of the UI component to which modifications provided by solutions in the solution set are applied and to which the client customizations remain applied to the UI component, the client customizations remaining applied to the UI component without manually re-applying the client customizations to the UI component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computing system comprising:
-
a processing system; and a data storage system that stores computer-readable instructions that, when executed by the processing system, cause the computing system to; display a customized UI component, the customized UI component being a version of a UI component to which client customizations have been applied, the UI component being a component of a UI of an application; modify a solution set by adding, removing, or updating a solution in the solution set, the solution set comprising one or more solutions that modify the UI component, the one or more solutions in the solution set adding functionality to the application; and after the solution set is modified, display a new customized UI component, the new customized UI component being a version of the UI component to which modifications provided by solutions in the solution set are applied and to which the client customizations remain applied to the UI component, the client customizations remaining applied to the UI component without manually re-applying the client customizations to the UI component; store change lists for the solutions in the solution set; and store a customization change list that expresses the client customizations; wherein, when the computer-readable instructions cause the computing system to modify the solution set by removing a given solution from the solution set, the computer-readable instructions cause the computing system to; generate a new non-customized interface definition by applying changes in the change lists for the solutions other than the given solution to a base interface definition that defines a base version of the UI component; generate a new customized interface definition by applying changes in the customization change list to the new non-customized interface definition, the new customized interface definition defining the new customized UI component; store a difference descriptor for each solution in the solution set; and modify the solution set by updating a given solution in the solution set, the computer-readable instructions cause the computing system to; generate a non-customized interface definition, the non-customized interface definition that defines a version of the UI component that results from applying the modifications provided by the solutions to the base version of the UI component; generate a customization difference descriptor, the customization difference descriptor being a document that denotes differences between a customized interface definition and the non-customized interface definition, the customized interface definition defining the customized UI component; generate a modified interface definition by applying earlier difference descriptors to the base interface definition that defines the base version of the UI component, the earlier difference descriptors being the difference descriptors for solutions in the solution set that were installed before the given solution was installed; generate a further modified interface definition by applying the difference descriptor for an updated version of the given solution to the modified interface definition; generate a new non-customized interface definition by applying later difference descriptors to the further modified interface definition, the later difference descriptors being the difference descriptors for solutions in the solution set that were installed after the given solution was installed; and generate a new customized interface definition by applying the customization difference descriptor to the new non-customized interface definition, the new customized interface definition defining the new customized UI component. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A computer storage medium storing computer-readable instructions that, when executed by a computing system, cause the computing system to:
-
display a customized version of a user interface (UI) component, the customized version of the UI component being a version of the UI component to which client customizations have been applied, the UI component being a component of a UI of a Customer Relationship Management (CRM) application, wherein the client customizations include one or more of the following;
client customizations to remove one or more elements from the UI component, client customizations to rename one or more elements in the UI component, and client customizations to change positions of one or more elements in the UI componentadding a first solution to a solution set, the solution set comprising one or more solutions that modify the UI component and add functionality to the CRM application; after the adding the first solution to the solution set, display a modified customized version of the UI component, the modified customized version of the UI component being a version of the UI component to which modifications provided by solutions in the solution set and the first solution are applied and to which the client customizations remain applied to the UI component without manually re-applying the client customizations to the UI component; removing a second solution from the solution set; after the removing the second solution from the solution set, display a further modified customized version of the UI component, the further modified customized version of the UI component being a version of the UI component to which the modifications provided by solutions in the solution set other than the second solution are applied and to which the client customizations remain applied to the UI component without manually re-applying the client customizations to the UI component; modifying a third solution in the solution set; and after the third solution is modified, display a yet further modified customized version of the UI component, the yet further modified customized version of the UI component being a version of the UI component to which the modifications provided by solutions in the solution set are applied and to which the client customizations remain applied to the UI component without manually re-applying the client customizations to the UI component, wherein modifying the third solution includes adding a new solution to the solution set, including; receiving a difference descriptor for the new solution, the difference descriptor for the new solution being a document that denotes differences between a source interface definition and a destination interface definition, the source interface definition and the destination interface definition defining different versions of the UI component; generating a customization difference descriptor, the customization difference descriptor being a document that denotes differences between a customized interface definition and a non-customized interface definition, the customized interface definition defining the customized UI component, the non-customized interface definition defining a version of the UI component that results from applying the modifications provided by the solutions to a base version of the UI component; generating a new non-customized interface definition by applying the difference descriptor for the new solution to the non-customized interface definition; and generating a new customized interface definition by applying the customization difference descriptor to the new non-customized interface definition, the new customized interface definition defining the new customized UI component.
-
Specification