[Geany-devel] Use GtkBuilder
Matthew Brush
mbrush at xxxxx
Mon Sep 26 05:08:31 UTC 2011
On 09/25/2011 07:33 PM, Lex Trotman wrote:
> On 26 September 2011 01:26, Dimitar Zhekov<dimitar.zhekov at gmail.com> wrote:
>> On Sun, 25 Sep 2011 01:53:38 -0700
>> Matthew Brush<mbrush at 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
More information about the Devel
mailing list