Skip to contentSkip to conversation

Switch to GTK+3

DISCUSSION Gary Thomas 3 participants 3 messages Jun 16, 2016

lore
Share & tools
lore
#0 lore raw

I just tried a build from the latest Poky/Yocto master (2a85038dd) Overall, I think the switch to GTK+3 is an improvement, but I have a number of [usability] questions:

* I built firefox from meta-browser and noticed that on my touch only device, it does not automatically pop-up the keyboard. However, epiphany does. I've only done a little testing but that's what I observed. Not having this happen "on demand" (i.e. when a text field has the focus) will make using a full screen application impossible on this hardware.

* Also on firefox, I can't seem to get the vertical scrollbar to work. Again, with epiphany it at least works.

* The system also doesn't seem to play very nice with my GPU enhanced i.MX6 and causes the SoC to overheat (didn't happen with GTK+2). Makes it rather unusable as well.

* gtk-play ran my 1GB system out of memory, just starting up :-( This caused a complete system lockup & I could not even restart the X server. This application also seemed to run quite well with GTK+2

* There also seem to be a continuous stream of messages like these on the console:

GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other
applications.
Gtk-Message: GtkDialog mapped without a transient parent. This is discouraged.

I know that these firefox vs. epiphany vs. chome vs. ... questions are not really the responsibility of Yocto or OE-core, but it does trickle down to those of us trying to use this framework.

Many thanks for any thoughts

n.b. I was torn what mailing list to use for this - it's tightly tied to OE-core, but isn't really about patches or changes, more about philosophy. If the OE-core list is more appropriate, please move the replies there.

Signature · 4 lines
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------
#1 lore raw
Quoted 4 lines · Gary Thomas

I just tried a build from the latest Poky/Yocto master (2a85038dd) Overall, I think the switch to GTK+3 is an improvement, but I have a number of [usability] questions:

It's a tricky upgrade, essentially upgrading a major part of an operating system from a version five years old version to a current one. I am sorry for the inconvenience.

Quoted 5 lines

* I built firefox from meta-browser and noticed that on my touch only device, it does not automatically pop-up the keyboard. However, epiphany does. I've only done a little testing but that's what I observed. Not having this happen "on demand" (i.e. when a text field has the focus) will make using a full screen application impossible on this hardware.

I assume this is still the Gtk2 firefox? There is a Gtk3 version released recently I believe.

Before the recent changes, Gtk+2 applications were the only thing supported by the virtual keyboard.

Now, the default configuration is to build only support for Gtk+3 but it is possible to support also Gtk+2 by adding "gtk2-im" into the matchbox-keyboard PACKAGECONFIG. This is not done by default to prevent the keyboard from bringing gtk+ into the image if nothing else requires it.

Quoted 2 lines

* Also on firefox, I can't seem to get the vertical scrollbar to work. Again, with epiphany it at least works.

This is slightly surprising if firefox is a gtk+2 application. The only thing that really changed with the GTK2 stack is the theme... but the current one (gnome-theme-adwaita from gnome-themes-standard) is the GNOME default so I'd expect it work. I have no suggestions here, Sorry.

Quoted 3 lines

* The system also doesn't seem to play very nice with my GPU enhanced i.MX6 and causes the SoC to overheat (didn't happen with GTK+2). Makes it rather unusable as well.

Eek. That sounds like a driver problem. The new Gtk is more demanding on graphics drivers but not by a huge difference.

Quoted 3 lines

* gtk-play ran my 1GB system out of memory, just starting up :-( This caused a complete system lockup & I could not even restart the X server. This application also seemed to run quite well with GTK+2

gst-player did go through some refactoring (the library parts are now in gst-plugins-bad) so new bugs are not impossible. It's unlikely that the Gtk upgrade itself would have this kind of effects, but maybe this is related to the previous problem -- wherever the root cause is.

Quoted 1 line

* There also seem to be a continuous stream of messages like these on the

console:

Quoted 2 lines

GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings

will not be saved or shared with other applications.

Quoted 1 line

Gtk-Message: GtkDialog mapped without a transient parent. This is

discouraged.

The messages as such are not problematic, assuming there's no flood of them.

GSettings is still something we might want to bring in (as a replacement for GConf which is deprecated), but that means a little porting work on matchbox components. The GtkDialog message is probably from gtk-play and should not be an issue.

Hope this helps,
Jussi

Quoted 21 lines

I know that these firefox vs. epiphany vs. chome vs. ... questions are not really the responsibility of Yocto or OE-core, but it does trickle down to those of us trying to use this framework.

Many thanks for any thoughts

n.b. I was torn what mailing list to use for this - it's tightly tied to OE-core, but isn't really about patches or changes, more about philosophy. If the OE-core list is more appropriate, please move the replies there.

--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
--
_______________________________________________
yocto mailing list
[email protected]
https://lists.yoctoproject.org/listinfo/yocto

#2 lore raw
Quoted 5 lines · Jussi Kukkonen

Now, the default configuration is to build only support for Gtk+3 but it is possible to support also Gtk+2 by adding "gtk2-im" into the matchbox-keyboard PACKAGECONFIG. This is not done by default to prevent the keyboard from bringing gtk+ into the image if nothing else requires it.

If we split the gtk2 and gtk3 IM modules into separate packages then both could be enabled with the cost that both gtk2 and gtk3 will be needed at build time.

As Jussi says, it's all a tradeoff, and the current work is towards removing gtk+2 from Sato images entirely.

GSettings is still something we might want to bring in (as a replacement

Quoted 4 lines

for GConf which is deprecated), but that means a little porting work on matchbox components. The GtkDialog message is probably from gtk-play and should not be an issue.

In particular the recipe here would be dconf, so that GSettings (part of GLib) has a persistent data storage. I believe dconf is in meta-oe already.

Ross