Bug 110

Summary: Review GTK+ on VGA
Product: [Yocto Project Subprojects] Sato Reporter: Joshua Lock - Disabled <josh>
Component: satoAssignee: Jussi Kukkonen <jku>
Status: RESOLVED OBSOLETE QA Contact:
Severity: normal    
Priority: Low CC: bluelightning, jessica.zhang, josh, julie.n.fleischer, meta.mr.watcher, meta.watcher, richard.purdie, ross.burton, sgw, shane.wang, song.liu, Xiaofeng.yan
Version: 1.0   
Target Milestone: Future   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)
Bug Depends on:    
Bug Blocks: 1615    
Attachments:
Description Flags
a test program for File Chooser none

Description Joshua Lock - Disabled 2010-07-16 04:46:37 UTC
We need to merge patches to Gtk+'s file chooser for small screen optimisation
Comment 1 Joshua Lock - Disabled 2011-10-18 10:22:27 UTC
We should be able to do this more cleanly, and therefore in a more easily maintainable way, by creating our own implementation of the Gtk+ File Chooser interface: http://developer.gnome.org/gtk/2.24/GtkFileChooser.html

The hardest part will likely be working through the original patch to determine what changes are being made to the File Chooser.
Comment 2 Joshua Lock - Disabled 2011-11-04 11:07:03 UTC
The Gtk+ 2.12.7 recipe has some patches which change the filechooser to work better on the target devices. More touch friendly, etc.

We want these, or similar, changes ported to modern Gtk+ implementations.

We need to first go through the filechooser patches in the gtk+ 2.12.7 directory[1] and figure out what they are actually doing and then create a FileChooser implementation which implements these changes.

Finally we need to set this FileChooser implementation as the default.

My preliminary research lead me to believe we can achieve all of this primarily through our own implementation of the filechooser interface and with as few patches to core gtk+ files as possible meaning this should be easier to maintain going forwards.

1. http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-gnome/gtk+/gtk+-2.12.7
Comment 3 Xiaofeng Yan 2011-11-30 00:42:51 UTC
(In reply to comment #2)
> The Gtk+ 2.12.7 recipe has some patches which change the filechooser to work
> better on the target devices. More touch friendly, etc.
> 
> We want these, or similar, changes ported to modern Gtk+ implementations.
> 
> We need to first go through the filechooser patches in the gtk+ 2.12.7
> directory[1] and figure out what they are actually doing and then create a
> FileChooser implementation which implements these changes.
> 
> Finally we need to set this FileChooser implementation as the default.
> 
> My preliminary research lead me to believe we can achieve all of this primarily
> through our own implementation of the filechooser interface and with as few
> patches to core gtk+ files as possible meaning this should be easier to
> maintain going forwards.
> 
> 1.
> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-gnome/gtk+/gtk+-2.12.7

Hi Joshua Lock,

I doesn't have experience to code with gtk before. Do you have much experience on gtk? It is difficult for me to implement these changes in the newest version. It could take much time to implement these function.
Comment 4 Joshua Lock - Disabled 2011-11-30 16:55:46 UTC
Hi Xiaofeng,

I have some experience with Gtk+. I think it will take some time to implement this patch, regardless of experience, as a lot of the work revolves around determining the effects of the existing patch which isn't at all documented and is ~9.5KLOC.

http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-gnome/gtk+/gtk+-2.12.7/filechooser-default.patch
Comment 5 Xiaofeng Yan 2011-12-05 01:16:07 UTC
Created attachment 286 [details]
a test program for File Chooser
Comment 6 Xiaofeng Yan 2011-12-05 01:16:50 UTC
(In reply to comment #4)
> Hi Xiaofeng,
> 
> I have some experience with Gtk+. I think it will take some time to implement
> this patch, regardless of experience, as a lot of the work revolves around
> determining the effects of the existing patch which isn't at all documented and
> is ~9.5KLOC.
> 
> http://git.yoctoproject.org/cgit/cgit.cgi/poky/tree/meta/recipes-gnome/gtk+/gtk+-2.12.7/filechooser-default.patch

Hi Joshua Lock,

I want to build two images, one based on gtk+ 2.12.7, the other based on 2.24.8

I will make a comparison for them and get a result. the patch is better than no patch in 2.24.8.  It need a test program to compare them. Please check the attachment. this is an example to test File Chooser. perhaps, you can give me better test program.

Do you have any suggestion about my method ? or it is not necessary. 

Thanks
Yan
Comment 7 Joshua Lock - Disabled 2011-12-05 11:42:56 UTC
(In reply to comment #6)

Yan,

> I want to build two images, one based on gtk+ 2.12.7, the other based on 2.24.8
> 
> I will make a comparison for them and get a result. 

This seems like a reasonable step to take, whilst you'll be hard pressed to get specific details of the implementation differences the visual clue should at least help you determine which parts of the FileChooser patch to focus on.

> perhaps, you can give me better test program.

There are several Gtk+ programs shipped with a Sato image, I'd probably have just used one of those such as the file manager pcmanfm or the text editor leafpad.
Comment 8 Xiaofeng Yan 2011-12-07 04:27:29 UTC
Hi Joshua,

Do you know why the patches for File Chooser in 2.12 isn't accepted by gtk's official community?
Comment 9 Joshua Lock - Disabled 2011-12-07 10:08:17 UTC
(In reply to comment #8)
> Hi Joshua,
> 
> Do you know why the patches for File Chooser in 2.12 isn't accepted by gtk's
> official community?

I don't know for certain but I imagine that it's because the patches are form-factor specific and overwrite the default chooser. The new FileChooser interface mentioned in comment 1 is newer than the patch but enables people to providing alternative FileChooser implementations without having to modify the stock Chooser.
Comment 10 Jessica 2011-12-20 11:41:06 UTC
per today's bug triage, it's probably a time for RP, Josh or Paul to own the bug
Comment 11 Joshua Lock - Disabled 2011-12-20 11:43:21 UTC
I think we'd mostly agree that this is a non-trivial amount of work so my first question would be whether we are sure this issue is of value to the project?

If so I'm happy to own this bug and see it scheduled and implemented.
Comment 12 Richard Purdie 2011-12-20 13:14:33 UTC
I think having the core reference UI fit on VGA screens is important. Having all the example customisations to do this present is therefore a good idea. Whilst this task is certainly not trivial, I don't believe it should take that long for someone with the relevant experience/background and it would be worthwhile to do that.
Comment 13 Richard Purdie 2012-01-26 12:39:54 UTC
*** Bug 1615 has been marked as a duplicate of this bug. ***
Comment 14 Ross Burton 2013-11-05 16:48:04 UTC
Generalising this to all of GTK+ on VGA screens.  The move to GTK+ 3 is likely to improve and hinder this in different ways.
Comment 15 Richard Purdie 2013-11-22 16:29:21 UTC
Ross: You don't get out the bug quiet that easily ;-)
Comment 16 Ross Burton 2013-11-22 16:30:00 UTC
Foiled again!
Comment 17 Ross Burton 2016-02-11 23:27:26 UTC
Jussi can have was is likely the lowest open bug number as he's been busy rewriting Sato.
Comment 18 Ross Burton 2017-08-08 13:34:08 UTC
VGA isn't relevant in any meaningful way now, even in embedded.  Closing wontfix.