I think Joana probabily tried to make another interface ontop of CL. This thread stroke on a interesting topic and made me curious what does contentlister do when it starts another viewer. I found that, in "viewer.c" on contentlister, there is a fuction "gboolean viewerInit(char *viewer) ", when CL starts another viewer, CL will find the viewer's identity and setup a IPC channel for later communication. So, for viewers not stared by CL, CL won't know how to communicate with them. That's why Joana have the same problem if she open a shell (or ssh) and open ipdf by command line.
Then, a quite challenging question comes out: is it possible to make a middle-ware between CL and viewer, and enable IPC between CL and viewer? I think it's possible, but I don't know how to do it.