No, LibQTip isn't compatible with the basic GameTooltip. It doesn't have the same methods and doesn't fire the same events.
Edit: actually I'm not sure what you mean. You can't replace the GameTooltip with a LQT-based tooltip for the reasons above. And as AckisRecipeList and Collectinator both directly uses LibQTip, they should haven't any interaction possible with the GameTooltip.
There is a very ugly hack: get the insecure frame coordinates relative to UIParent and anchor the secure frames to the same points, relative to UIParent. You'll have issues when the insecureFrame moves or is hidden/shown. Moreover, you'll have to hide/show the secureFrame when entering/leaving combat to avoid "insensible" regions on screen.
Er... This change has two big no-no :
1) by removing the subdirectory, your screwed up the embedded versions of any addon that embeds LibQTip using .pkgmeta because it is referencing the subdirectory,
2) by removing hard-embedded LibStub, you screwed up the no-lib versions of any addon that uses LibQTip because LibStub has no standalone version and should not be referenced in OptDep anyway. (these addons may obtain LibStub another way but any addon that is using *only* LibQTip is doomed)
These changes were uncalled for as the library was fully working. Remember : if it is not broken, do not fix it.
After further testing, it seems that creating FontString when the tooltip is hidden might cause the issue. E.g. the following code still causes truncated strings to be displayed with r59 :
local tip = LibStub('LibQTip-1.0'):Acquire('Bla3', 3, 'LEFT', 'LEFT', 'RIGHT')
tip:Hide() -- ensure the tooltip is hidden (which is not always the case)
tip:AddLine('x', 'y', 'z')
local y,x = tip:AddLine()
y,x = tip:SetCell(y,x , 'Truc', 2)
y,x = tip:SetCell(y,x , 'Machin')
Now, if you replace the tip:Hide() by tip:Show() so the tooltip is shown during building code, everything goes fine.
Edit: note that on first creation, the tooltip is shown (because newly created frame are always shown). But when the tooltip frame is released then acquired again, it is hidden (because Release hides it). This is quite inconsistent.
Edit2: moreover, running the above code without clearing nor releasing the tooltip results in consistently adding truncated strings. I am definitively convinced this is the issue.
Edit3: I just tried this: I created the cells as child of UIParent (so they are shown) then I reparent them to the tooltip. And everything goes fine but I am afraid it might have issues with derived cell providers.
Actually I wanted ResizeColspans to be called only once, when the tooltip is first shown, which should be when it is completely built. Apparently, I did not do it right.
But your solution has the drawback of calling it and running it *on* every :SetCell / :AddLine / :AddHeader. Firstly, that should eats lots of CPU cycles. Secondly, I think it will screw the layout logic which expects all content to be added.
(BTW, you did not bump the library minor version.)
Another solution could be to use a dirty flag and an onupdate handler to layout the cells when the tooltip is actually visible.