On 09/25/2011 07:33 PM, Lex Trotman wrote:
On 26 September 2011 01:26, Dimitar Zhekovdimitar.zhekov@gmail.com wrote:
On Sun, 25 Sep 2011 01:53:38 -0700 Matthew Brushmbrush@codebrainz.ca wrote:
I've also taken the liberty of porting the Terminal/VTE preferences UI to the new Glade 3 format rather than being hard-coded. IIUC if the VTE/terminal is not enabled for whatever reason, the "Terminal" tab in the preferences dialog just won't be shown.
When we upgrade (someday) to 2.16, why not make VTE a compile time option only? I can understand why somebody would like to compile Geany without vte support, but since all novadays gtk+ terminal emulators are based on vte, making it a run-time option seems like overkill to me. It was a good thing, several years ago...
Hey Dimitar,
The problem with this is that means that all binary packages now depend on vte. If you might want to compile it out, then you might not want to install it.
Or there would need to be several binary packages, with and without VTE compiled in which is more maintenance.
With the runtime check VTE does not need to be installed.
One thing that would be cool with the runtime loading of VTE is if it could gracefully handle missing symbols in libvte. I don't know if this is possible with GModule/dlopen, but if it is, it would be great to implement this.
For example, I'm testing Geany with GTK+ 2.16 and when it goes to load the VTE, it loads the system one that was compiled against GTK+ 2.24 and Geany crashes with the output:
/opt/geany-2.16/bin/geany: symbol lookup error: /usr/lib/libvte.so.9: undefined symbol: gtk_widget_set_can_focus
To make Geany run, you have to use the `-t` option to disable the terminal or install a libvte compiled against the same GTK+ version as Geany and specify its path with the `--vte-lib` option. It would be nice to be able to handle such a case of missing symbols and just disable the VTE automatically, even though it might not be experienced too frequently on a typical system.
Cheers, Matthew Brush