site  contact  subhomenews

ROX-Filer: fix for focus bug

February 08, 2010 — BarryK
I described this problem here:

I would like to thank 'perthie' who responded, informing me of a fix posted to the Dpup forum thread.

I found it:

...thanks to 'rcrsn51' for the fix.

I have tested in pup 432 and the fix works. I have implemented this fix in Woof, adding this code to /etc/profile:

#100208 rox-filer needs this for GTK >= 2.18, fixes focus problem...

if [ `grep '^gtk+-2' /root/.packages/woof-installed-packages | head -n 1 | cut -f 2 -d '.'` -ge 18 ];then


Unofficial 432
Username: BarryK
Um, looking at my history, after I released the official Puppy 4.3.1, I did some more upgrading of packages in Woof for the 4.x series. GTK included, upgraded from 2.14.7 to 2.18.3. So the 432 build I uploaded is not an error, that is the most recent GTK version for that series. Now that I have a fix for ROX-Filer, I'll leave it at that, will now rebuild 432 and upload today. For anyone reading this who has not been following my recent blog posts, this pup 4.3.2 is not intended as the next official Puppy release, it came about because I wanted to do a 4.x build for the Gecko Edubook. Anyway, I'll upload pup 432 again today, and anyone will be welcome to play with it. Who knows, maybe it could be an official 4.3.2, a gap filler while other versions such as Dpup and 4.4CE are still coming along? ...dunno, just a thought. I'm not so interested if it turns out that my 432 build has lots of new problems. Seems pretty good though, I'm using it right now (but I'll be going back to Quirky soon).

fixed my system
Username: giterdun
"I had this same focus problem while running a version of rox from debian sqeeze in ubuntu 9.10. I used the information above and it fixed the problem! So thanks for bringing the issue up. :)

Another problem with GTK 2.18
Username: BarryK
"When I was first developing Quirky, with GTK 2.18.x, the ROX-Filer focus problem wasn't the only thing that caused me to roll back to GTK 2.16.x. In SeaMonkey, the window would suddenly redraw, for no apparent reason, causing a big flicker. Now that I am testing Puppy 4.3.2, which has GTK 2.18.3, this problem has come back. It only happens sometimes, but I find it annoying. Earlier versions of GTK do not have this problem.

Possible fix for ROX
Username: amigo
"Barry, I have maybe come up with a real fix for the rox-GDK_NATIVE_WINDOWS problem: [code]--- ./src/gui_support.c.01 2006-03-25 12:55:13.000000000 +0100 +++ ./src/gui_support.c 2010-02-13 15:33:04.000000000 +0100 @@ -1201,7 +1201,7 @@ xev.xclient.type = ClientMessage; xev.xclient.serial = 0; xev.xclient.send_event = True; - xev.xclient.window = GDK_WINDOW_XID(window); + xev.xclient.window = gdk_x11_drawable_get_xid(window); xev.xclient.message_type = gdk_x11_get_xatom_by_name_for_display( display, "_NET_WM_STATE"); xev.xclient.format = 32; [/code] This is kind of a stab in the dark as not too many projects have fixed their code yet, so there are not many examples of the proper way to fix things. It would be nice if you'd try it out, though -the fix may come in handy later when other things need fixing. From what I see, the workaround you posted above may cause problems with some apps, so you might consider exporting 'GDK_NATIVE_WINDOWS=true' from the 'rox' wrapper instead of doing it globally in /etc/profile. Also, some apps/systems seem to only work by using GDK_NATIVE_WINDOWS=1 instead of GDK_NATIVE_WINDOWS=true I mention these things only because the info may come in handy later. The patch above is against the rox-filer_puppy-2.6.1 sources - I don't know what you are using at the moment, but the patch will most likely apply to later versions as well.

Tags: woof