I tried developing a Dexterity type TTW with two RichText fields (plus a RelationChoice).
I thought the RichText fields by default would have TinyMCE enabled, but apparently there's something wrong: The Dexterity schema editor & regular Plone UI show just a textarea with "edit without visual editor" link at the bottom.
Enabling the RichText behavior populates the type with a RichText field just fine, but since I need two, that's not an option.
Given the behavior shows TinyMCE just fine and regular (upgraded) pages' RichText fields use the upgraded TinyMCE, I cannot understand why the custom RichText field does not. I guess there's some configuration missing, but where?
A plone.app.widgets 1.9.1 changelog entry (by @seanupton) says it's possible to use Rich Text w/TinyMCE 4 in Dexterity types other than plone.app.contenttypes. How? What's required for that?
I saw some requirejs-related errors, yes. But those were there also when TinyMCE was working ok. I am trying to find time to investigate this in more detail with a fresh instance to make absolutely sure the live site is not causing this in some way.
The idea is that plone.app.widgets "cheats" and hardcodes that richtext widget, so you need to register the adapter.
You could also take a look at the eea/eea.climateadapt package, is using the same combination: Plone 4.3, dexterity, plone.app.widgets. In our case, we've released a custom egg of plone.app.widgets, to benefit from an updated Mockup.
Thanks @tiberiuichim ! But the link does not work I tried to find the blog on the site but could not...? UPDATE: Duh, it works with everything but Safari on OSX... weird.
Apologies for the lateness of my reply, but I have not tried this using TTW. You need to use plone.app.widgets.dx.RichTextFieldWidget, IIRC. To do that on an interface that is written in Python looks like this:
from plone.app.widgets.dx import RichTextFieldWidget # req >= 1.9.1+
class IMyContent(model.Schema):
directives.widget(foo=RichTextFieldWidget)
foo = RichText()
directives.widget(bar=RichTextFieldWidget)
bar = RichText()
I am not sure how do do this in TTW plone.schemaeditor (1.4.1), as I have not tried assigning widgets using schema editor (though I think you might have to edit this in the supermodel XML of the type's schema using a dotted name to the widget).