Community
Participate
Working Groups
I20080222-1622 IInformationControlExtension5#allowMoveIntoControl() is a bad API, since it relies on ITextHoverExtension2#getInformationPresenterControlCreator() to supply an appropriate control creator. If a control creator is not available we currently fall back to a default information control (in AbstractTextEditor and in StickyHoverManager), which will render garbage if the input is not HTML text. Should get rid of ITextHoverExtension2#getInformationPresenterControlCreator() and add IInformationControlExtension5#getInformationPresenterControlCreator() instead. The only necessary bug compatibility fallback will be the check for IInformationProviderExtension2 in the F2 code if the info control does not implement IInformationControlExtension5.
Created attachment 92825 [details] Fix
Created attachment 93014 [details] Fix2
Patch committed.
Created attachment 93118 [details] Fix3 Here's the final patch for the new hovers APIs. It - gets rid of ITextHoverExtension2#getInformationPresenterControlCreator(), - streamlines enablement of the "enrich" feature by merging the two settings into one, and - installs StickyHoverManager all the time, which also allows F2 to keep the size when enriching hovers (but keeps the fallback to the old method for compatibility)
It's really nice now. Thanks for all this. Fixed in HEAD. Available in builds >= I20080323-200.