Pathbrowser support for Context-Aware Configuration Editor

Description

The new Context-Aware Configuration Editor looks good, but I would suggest to add support for a pathbrowser, like it was available in the old WCM IO Configuration editor.

It would be nice if we could add an aditional annotation next to the @Property annotation specifying the widget's type.

io.wcm.config.editor.WidgetTypes PATHBROWSER is already defined in the new Context-Aware Configuration Editor but there is no rendered view for this type of property.

Activity

Show:
David Ding
April 6, 2017, 12:49 AM

I have done some linting/reformatting to fit the project's style
and made updates to the pathbrowser.html partial to disable the field when inherited/overridden:
https://github.com/wcm-io/wcm-io-caconfig/commit/406dd837b1791c6574a2f40b27c61324a04a47fd

There appears to be a bug with the autosuggested dropdown - in relation to keyboard navigation:
When using the up/down arrow keys to navigate the suggestions - it breaks after the user moves to the second item in the list.

- should this be solved prior to merging?
Also, do we need to support multivalues?

Stefan Seifert
April 6, 2017, 2:33 AM

There appears to be a bug with the autosuggested dropdown - in relation to keyboard navigation:

i suppose this autosuggestion is a feature provided by AEM and it does not work cleanly here? in this case we do not have to fix it, it's still nice to have the path browser button and we can live with it.

Also, do we need to support multivalues?

not necessarily as long as nothing unexpected happens if someone configures it this way - we could e.g. just disable the path browser feature if a string array is used.

David Ding
April 6, 2017, 8:28 PM

i suppose this autosuggestion is a feature provided by AEM and it does not work cleanly here? in this case we do not have to fix it, it's still nice to have the path browser button and we can live with it.

It's using an older Coral component, but I think the keyboard selection should work. I'm not sure why it isn't. We can try to fix it at a later stage - it's not a critical bug.

not necessarily as long as nothing unexpected happens if someone configures it this way - we could e.g. just disable the path browser feature if a string array is used.

Well, as it is currently implemented, multivalue takes "precedence" over widgetType === "pathbrowser", so it will not be used for arrays.

As such, I think we can merge.

Stefan Seifert
April 7, 2017, 12:46 AM

there is one open issue - the root path is always /content.

but it should either be:

  • /content if no further properties are defined for the config property

  • if the property pathbrowserRootPath it should be the path defined by this property

  • if the property pathbrowserRootPathContext is set to "true" the current configuration context path should be used as root path (i've just added this property definition)

Stefan Seifert
April 7, 2017, 7:04 AM

i've fixed the last two small issues and merged it with develop - thanks for all helping in this issue.

Fixed

Assignee

Unassigned

Reporter

Robin Brouns

Labels

Components

Affects versions

Priority

Major