Enhance plugin extension panels to allow ordering per a config Enhance plugin extension panels to allow ordering to be specified in AllProjects projects config so that ordering can be defined rather than determined by the order in which plugins are loaded. The interface change is backwards compatible at runtime because the extension panel implementation will correctly handle the null value for the panel name. Change-Id: I51f3ac5a18b504daa5bf55d92cc33621d2247082
diff --git a/Documentation/dev-plugins.txt b/Documentation/dev-plugins.txt index 75ef9e6..6c9b601 100644 --- a/Documentation/dev-plugins.txt +++ b/Documentation/dev-plugins.txt
@@ -1209,6 +1209,7 @@ @Override public void onPluginLoad() { Plugin.get().panel(GerritUiExtensionPoint.CHANGE_SCREEN_BELOW_CHANGE_INFO_BLOCK, + "my_panel_name", new Panel.EntryPoint() { @Override public void onLoad(Panel panel) { @@ -1220,6 +1221,23 @@ } ---- +Change Screen panel ordering may be specified in the +project config. Values may be either "plugin name" or +"plugin name"."panel name". +Panels not specified in the config will be added +to the end in load order. Panels specified in the config that +are not found will be ignored. + +Example config: +---- +[extension-panels "CHANGE_SCREEN_BELOW_CHANGE_INFO_BLOCK"] + panel = helloworld.change_id + panel = myotherplugin + panel = myplugin.my_panel_name +---- + + + [[actions]] === Actions