Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Tue 21 Oct 2014, 14:53
All times are UTC - 4
 Forum index » Advanced Topics » Additional Software (PETs, n' stuff) » Desktop
JWM Desktop Updates to V755 (Release) and V910 (Test)
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
Page 8 of 16 Posts_count   Goto page: Previous 1, 2, 3, ..., 6, 7, 8, 9, 10, ..., 14, 15, 16 Next
Author Message
scsijon

Joined: 23 May 2007
Posts: 1046
Location: the australian mallee

PostPosted: Thu 25 Apr 2013, 00:25    Post_subject:  

@Karl, if you can give me enough info to document the problems after trying 733 to make sure their still there, I'll put them into joe's problem list, he's fixing them as he knows about them at present as he wants to put out a 'stable revision step' as soon as their all fixed and confirmed as fixed.
Back to top
View user's profile Send_private_message Visit_website 
Karl Godt


Joined: 20 Jun 2010
Posts: 3972
Location: Kiel,Germany

PostPosted: Thu 25 Apr 2013, 08:37    Post_subject:  

Jon, look here for the tray :
After jwm -restart in v722 many tray swallow apps or tray apps that find their way into the tray themselves, don't show up in the tray, just empty spaces .
One problem is that tray apps that don't have a kill former my_pids , return or exit if already running, show up another time if put into .jwmrc-tray .

Puppy's freememapplet_xlib-404 has an odd codeline :
Code:
system("kill `pidof freememapplet | grep ' ' | cut -f 2 -d ' '`");

which will kill always even if pidof is empty, thus polluting /tmp/xerrs.log
PLUS that my installation has got a freememappletshell wrapper that kills too without tests Very Happy
Code:
system("FREEMEMPIDS=`pidof freememapplet | grep ' ' |cut -f2- -d' '`;for PiD in $FREEMEMPIDS;do kill $PiD;done");

works for me Shocked

*

And what I found out :
my jwmrc-tray wrote:

Code:
        <Swallow name="fbxkb">
            pidof fbxkb >/dev/null 2>/dev/null || fbxkb
        </Swallow>
        <Swallow name="absvolume">
            pidof absvolume >/dev/null 2>/dev/null || absvolume
        </Swallow>
        <Swallow name="retrovol">
            pidof retrovol >/dev/null 2>/dev/null || retrovol -hide
        </Swallow>
        <Swallow name="blinky">
            pidof blinkydelayed >/dev/null 2>/dev/null || blinkydelayed -bg "#4D525B"
        </Swallow>
        <Swallow name="asapm">
            pidof asapm >/dev/null 2>/dev/null || asapmshell -u 4
        </Swallow>
        <Swallow name="freememapplet" width="34">
            freememapplet
        </Swallow>
        <Swallow name="xload" width="32">
            xload -nolabel -fg red -hl white -bg "gray45"
        </Swallow>

Works quiet well on my side to prevent apps showing up multiple times if I do a jwm -restart .
jwm-722-debug-tray-after-jwm--restart.jpg
 Description   
 Filesize   17.74 KB
 Viewed   532 Time(s)

jwm-722-debug-tray-after-jwm--restart.jpg

jwm-722-debug-tray-after-restartwm.jpg
 Description   
 Filesize   14.97 KB
 Viewed   528 Time(s)

jwm-722-debug-tray-after-restartwm.jpg

jwm-456-debug-tray-after-jwm--restart.jpg
 Description   
 Filesize   19.35 KB
 Viewed   531 Time(s)

jwm-456-debug-tray-after-jwm--restart.jpg

jwm-456-debug-tray-after-restartwm.jpg
 Description   
 Filesize   19.4 KB
 Viewed   518 Time(s)

jwm-456-debug-tray-after-restartwm.jpg

Back to top
View user's profile Send_private_message Visit_website 
Karl Godt


Joined: 20 Jun 2010
Posts: 3972
Location: Kiel,Germany

PostPosted: Thu 25 Apr 2013, 08:44    Post_subject:  

About geany and suddenly appearing windows from other virtual screens :

This happens if I shadow / roll up geany to be able to scroll to the next screen, click a text file :
formerly-rolled-up-geany-appears-in-current-window-titlebar-partly-working.jpg
 Description   
 Filesize   195.66 KB
 Viewed   527 Time(s)

formerly-rolled-up-geany-appears-in-current-window-titlebar-partly-working.jpg

Back to top
View user's profile Send_private_message Visit_website 
joewing

Joined: 24 Dec 2006
Posts: 23

PostPosted: Thu 25 Apr 2013, 20:33    Post_subject:  

Karl,
Thanks for reporting the bug. I'm able to reproduce the virtual desktop issue and should have a fix shortly.
I'm not sure what the deal with the swallowed application issue is, is there a difference in the configuration that's causing that?

Please keep me informed of any bugs, I can't fix them unless I know about them (and, unless they're listed in issues on GitHub, I don't know about them).

- Joe
Back to top
View user's profile Send_private_message 
Karl Godt


Joined: 20 Jun 2010
Posts: 3972
Location: Kiel,Germany

PostPosted: Thu 25 Apr 2013, 21:13    Post_subject:  

Hi Joe !

I had configured jwm as
Code:
./configure --enable-debug

and because of not being able to configure newer fribidi until now
Code:
./configure --enable-debug --disable-fribidi

for versions >=634

I also don't do a make install but
Code:
cp ./src/jwm ./src/jwm-VERSION-COMPILEOPTIONS
cp  ./src/jwm-VERSION-COMPILEOPTIONS /usr/bin

do a wmexit,
Code:
ln -sf /usr/bin/jwm-VERSION-COMPILEOPTIONS /usr/bin/jwm
xwin

in the kernel console .

Problem is that tray applications started by .xinitrc ( /usr/sbin/delayedrun -> /root/Startup ) seems to be treated differently than if added to .jwmrc-tray ( ie some seem to load +1 times if jwm -restart ) .

The icons that show as empty space in the tray are mainly .png .
ldd on both versions shows libpng12.so.0 => /usr/lib/libpng12.so.0

722:
ldd `which jwm` |sort
Code:
   libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb75a3000)
   libc.so.6 => /lib/libc.so.6 (0xb72c4000)
   libdl.so.2 => /lib/libdl.so.2 (0xb72b8000)
   libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb706f000)
   libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb745b000)
   libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb73fd000)
   libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb762f000)
   libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0 (0xb70c2000)
   libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb74b8000)
   libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb7566000)
   libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb7569000)
   libgsf-1.so.114 => /usr/lib/libgsf-1.so.114 (0xb7281000)
   libICE.so.6 => /usr/X11R7/lib/libICE.so.6 (0xb6fe1000)
   libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0xb7498000)
   /lib/ld-linux.so.2 (0xb776b000)
   libm.so.6 => /lib/libm.so.6 (0xb760d000)
   libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb7122000)
   libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb7161000)
   libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb716b000)
   libpcre.so.0 => /usr/lib/libpcre.so.0 (0xb7040000)
   libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0xb708b000)
   libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb7675000)
   librsvg-2.so.2 => /usr/lib/librsvg-2.so.2 (0xb7645000)
   libSM.so.6 => /usr/X11R7/lib/libSM.so.6 (0xb6ff5000)
   libX11.so.6 => /usr/lib/libX11.so.6 (0xb7698000)
   libXau.so.6 => /usr/X11R7/lib/libXau.so.6 (0xb72c1000)
   libXdmcp.so.6 => /usr/X11R7/lib/libXdmcp.so.6 (0xb72bc000)
   libXext.so.6 => /usr/lib/libXext.so.6 (0xb73d5000)
   libXft.so.2 => /usr/lib/libXft.so.2 (0xb7489000)
   libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb73bf000)
   libxml2.so.2 => /usr/lib/libxml2.so.2 (0xb7194000)
   libXmu.so.6 => /usr/lib/libXmu.so.6 (0xb73c2000)
   libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb73e1000)
   libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb7481000)
   libXt.so.6 => /usr/X11R7/lib/libXt.so.6 (0xb6ffd000)
   libz.so.1 => /lib/libz.so.1 (0xb73ee000)
   linux-gate.so.1 =>  (0xb776a000)

ldd /usr/bin/jwm-456-debug |sort
Code:

   libc.so.6 => /lib/libc.so.6 (0xb7412000)
   libdl.so.2 => /lib/libdl.so.2 (0xb7406000)
   libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb73c7000)
   libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb75b7000)
   libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb7559000)
   libfribidi.so.0 => /usr/lib/libfribidi.so.0 (0xb753c000)
   libICE.so.6 => /usr/X11R7/lib/libICE.so.6 (0xb7369000)
   libjpeg.so.8 => /usr/lib/libjpeg.so.8 (0xb75f4000)
   /lib/ld-linux.so.2 (0xb7725000)
   libm.so.6 => /lib/libm.so.6 (0xb73e3000)
   libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb762f000)
   libSM.so.6 => /usr/X11R7/lib/libSM.so.6 (0xb737d000)
   libX11.so.6 => /usr/lib/libX11.so.6 (0xb7652000)
   libXau.so.6 => /usr/X11R7/lib/libXau.so.6 (0xb740f000)
   libXdmcp.so.6 => /usr/X11R7/lib/libXdmcp.so.6 (0xb740a000)
   libXext.so.6 => /usr/lib/libXext.so.6 (0xb7523000)
   libXft.so.2 => /usr/lib/libXft.so.2 (0xb75e5000)
   libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb750d000)
   libXmu.so.6 => /usr/lib/libXmu.so.6 (0xb7510000)
   libXpm.so.4 => /usr/lib/libXpm.so.4 (0xb752f000)
   libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb75de000)
   libXt.so.6 => /usr/X11R7/lib/libXt.so.6 (0xb7384000)
   libz.so.1 => /lib/libz.so.1 (0xb754a000)
   linux-gate.so.1 =>  (0xb7724000)

J456=`ldd /usr/bin/jwm-456-debug |sed 's% (.*)%%'|sort`
J722=`ldd $(which jwm) |sed 's% (.*)%%'|sort`
echo "$J722" | grep -v "$J456"
Code:
   libcairo.so.2 => /usr/lib/libcairo.so.2
   libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0
   libgio-2.0.so.0 => /usr/lib/libgio-2.0.so.0
   libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0
   libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0
   libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0
   libgsf-1.so.114 => /usr/lib/libgsf-1.so.114
   libjpeg.so.62 => /usr/lib/libjpeg.so.62
   libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0
   libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0
   libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0
   libpcre.so.0 => /usr/lib/libpcre.so.0
   libpixman-1.so.0 => /usr/lib/libpixman-1.so.0
   librsvg-2.so.2 => /usr/lib/librsvg-2.so.2
   libxml2.so.2 => /usr/lib/libxml2.so.2
Back to top
View user's profile Send_private_message Visit_website 
L18L

Joined: 19 Jun 2010
Posts: 2525
Location: Moved from Hosla to www.eussenheim.de

PostPosted: Fri 26 Apr 2013, 14:09    Post_subject:  

Karl Godt wrote:
... because of not being able to configure newer fribidi until now
Code:
./configure --enable-debug --disable-fribidi

for versions >=634...

Hi Karl,
if you got fribidi configured you will be another unsung heroe for the Arabic world see
http://sourceforge.net/tracker/index.php?func=detail&aid=3577853&group_id=157836&atid=805416

But one thing after the other. No net huudle Very Happy
Back to top
View user's profile Send_private_message 
joewing

Joined: 24 Dec 2006
Posts: 23

PostPosted: Sat 27 Apr 2013, 14:01    Post_subject:  

About the Swallow thing, programs started via "Swallow" are treated differently than programs in .xinitrc in that JWM will always attempt to start programs in "Swallow" when starting (or restarting). JWM will also attempt to kill programs in "Swallow" when shutting down (or preparing to restart) assuming the program was successfully swallowed.

Programs started with .xinitrc will only be started when X starts. It's problematic if you expect such a program to be swallowed by JWM because because JWM won't swallow windows are visible when JWM starts (JWM tries to only swallow programs that it started with that explicit purpose). Of course, if the window wasn't visible when JWM started, a program started via .xinitrc could get swallowed accidentally. This is because JWM has no way of knowing that it wasn't responsible for starting the application that created that window.

Doing things like checking if the program is already running in the command for Swallow probably isn't a good idea since it will cause strange things to happen, like JWM not swallowing windows because they are already visible. Likewise, starting windows from .xinitrc that you expect JWM to swallow won't always work (though it might sometimes, depending on how long it takes the window to map). I don't think anything has changed with this version of JWM that should affect this, but it's very timing dependent.

Anyway, I think a problem that may present itself (perhaps this is the reason for the process checks in the configuration file?) is that a window doesn't map soon enough before JWM is restarted. When a window doesn't map before JWM is restarted, JWM will fail to close the window before exiting (because the window doesn't exist) and you end up with two copies of the application (one that gets swallowed). There is a delay built into JWM on restart to prevent this, but it's not long enough on some systems. Is this what's happening?

Assuming this is the problem, I modified JWM to wait longer before a restart if there are still applications that have yet to be swallowed. Unfortunately, I can't make JWM wait indefinitely, or a typo in the configuration file would prevent you from exiting or restarting JWM. So I made JWM wait for up to a second longer for swallow windows to map (so they can be killed) in the latest snapshot (736).

For the png icons, what does the your configuration look like for the icons that aren't showing up?

Regarding fribidi, does the 19 spaces thing still happen in the latest version of JWM?

- Joe
Back to top
View user's profile Send_private_message 
joewing

Joined: 24 Dec 2006
Posts: 23

PostPosted: Sat 27 Apr 2013, 14:43    Post_subject:  

I've reproduced the bi-directional font problem, so hopefully I should have a fix soon.

- Joe
Back to top
View user's profile Send_private_message 
L18L

Joined: 19 Jun 2010
Posts: 2525
Location: Moved from Hosla to www.eussenheim.de

PostPosted: Sun 28 Apr 2013, 07:15    Post_subject:  

joewing wrote:
I've reproduced the bi-directional font problem, so hopefully I should have a fix soon.

- Joe

glad to read that.

- L
Waiting while playing your tile slider game internationalized. Very Happy
Back to top
View user's profile Send_private_message 
01micko


Joined: 11 Oct 2008
Posts: 7831
Location: qld

PostPosted: Sun 28 Apr 2013, 08:00    Post_subject:  

IMHO the way we start tray apps is an abomination! Every decent WM has a way to start apps on start of the WM. JWM achieves this with the <StartupCommand> tag which you can put in the main .jwmrc or as an <Include>.

On my raspi I have raspbian-wheezy and/or slackware-14.0 running and have a few tray apps adapted and compiled for the Pi.
Code:
   <StartupCommand>network_tray</StartupCommand>
   <StartupCommand>volcont</StartupCommand>
   <StartupCommand>temp2tray</StartupCommand>


I'm not saying Puppy should change, it would break an awful lot of programs. But for tinkerers (Karl Wink ) this is a great way to experiment.

2c

_________________
Woof Mailing List | keep the faith Cool |
Back to top
View user's profile Send_private_message Visit_website 
Karl Godt


Joined: 20 Jun 2010
Posts: 3972
Location: Kiel,Germany

PostPosted: Mon 29 Apr 2013, 10:44    Post_subject:  

Short update for now :
jwm-736 now expects some keyboard input after
jwm -restart from xterminal to actually execute the restart feature .

Stable tray programs that have never failed drawing their icon-window into the tray are :

* absvolume
* recent freememapplet_tray-2.X versions
* network_tray and blinkydelayed
* xload

Wonky programs :

* fbxkb ( keyboard switcher program )
* retrovol
* old xlib freememapplet versions

Am testing further with different possibilities to launch them from .xinitrc or .jwmrc-tray .

What I can tell for now is , that a wrapper script seems to work to manage the freememapplet versions :
Code:

ERR=/dev/null
QUIET=''

pidof inotifywait && killall inotifywait
## PUPPY-4 xlib-404 uses inotifywait,
## PUPPY-5 xlib-0.1.2 already df

for p in `echo -e "${PATH//:/\n}"` ; do
FREE_MEM_APPLETS="$FREE_MEM_APPLETS
`ls -1 ${p}/*freemem* 2>$ERR`"
done

FREE_MEM_APPLETS=`echo "$FREE_MEM_APPLETS" | grep -vw "${0##*/}"`

for app in $FREE_MEM_APPLETS ; do
echo -n "$app "
[ -f $app -a -x $app ] || { echo " not a file andor not executable";continue; }
echo -n " is file and executable "
ldd $app | grep $QUIET -i 'xpm' && { pidof ${app##*/} && { kill `pidof ${app##*/}`;sleep 2; }; }
pidof ${app##*/} && { echo " already running";continue; }
echo " not already running"
$app &
done

echo
sleep 1
ps -A -o pid,s,cmd,args | grep free

freememapplet xlib has to be killed.
It has a kill other freememapplet compiled into it, but that works only as long as the new pid is higher than the previous pid .
Also new freememapplet instances then don't go into the tray anymore, they open a tiny window in the NW corner of the desktop.

*

ABOUT the timing :
Code:
for i in `seq 1 1 10` ; do sleep $i ; jwm -restart ; done

did not show any relyable results . The wonky applications sometimes showed up fully functional and somes not. Have not recognized a sleep value that worked always.

*

WHAT I am investigating about further with these tray applications :
GTK-2.0 problems .

Puppy-5 libgtk-x11-2.0.so.0.2000.X seems to work better for retrovol v0.11 and v0.12 than earlier libgtk-x11-2.0.so.0.1X.X .
The default v0.6 showed up as empty space always anyway .

Will have to check that the the link targets for *.so and *.so.0 match on my system . ldconfig only updates the *.so.X links, not the *.so links .
Back to top
View user's profile Send_private_message Visit_website 
joewing

Joined: 24 Dec 2006
Posts: 23

PostPosted: Tue 30 Apr 2013, 11:21    Post_subject:  

Karl:
I think the source of the problems you're experiencing is due to having JWM swallow applications that run in the dock (or "system tray" according to EWMH). For example, retrovol will dock itself (it should not be swallowed). So rather than doing "Swallow", just start the program (possibly in StartupCommand). The "Swallow" feature is only for windows that don't support running in the dock natively, for example, xload, xclock, xbiff, etc.

What's happening is that JWM starts those applications to attempt swallow them, and then the applications don't create a window (instead they just create an icon on the dock area). So JWM continues thinking that the application never started. Finally, when you restart, JWM will start the application again without killing it because JWM doesn't know it's already running. This is when retrovol will create a window, which JWM happily swallows (though you probably don't want JWM to swallow that window).

L18L:
Fribidi support should work correctly in JWM now (as of 737). I can't read it, but it appears to be showing all the text and setting the width correctly.

- Joe
Back to top
View user's profile Send_private_message 
L18L

Joined: 19 Jun 2010
Posts: 2525
Location: Moved from Hosla to www.eussenheim.de

PostPosted: Tue 30 Apr 2013, 14:28    Post_subject:
Sub_title: fribidi
 

joewing wrote:
Fribidi support should work correctly in JWM now (as of 737). I can't read it, but it appears to be showing all the text and setting the width correctly.

Sorry not with me
Here is what I have done:

./configure --prefix=/usr
make
make install

sed -i 's#Name=Abiword word processor#Name=معالج الكتابة آبي وورد#' /usr/share/applications/Abiword-wordprocessor.desktop

fixmenus
jwm -restart
arabic_733.png
 Description   missing the right most word
 Filesize   34.61 KB
 Viewed   263 Time(s)

arabic_733.png

Back to top
View user's profile Send_private_message 
joewing

Joined: 24 Dec 2006
Posts: 23

PostPosted: Tue 30 Apr 2013, 18:17    Post_subject:
Sub_title: fribidi
 

L18L:
That seems to work for me. Did you exit JWM and start it again? Running "jwm -restart" just restarts the currently running instance.

- Joe
Back to top
View user's profile Send_private_message 
scsijon

Joined: 23 May 2007
Posts: 1046
Location: the australian mallee

PostPosted: Tue 30 Apr 2013, 20:19    Post_subject:  

i'm back, sorry folks business has got in the way of "puppy fun". Confused I will build new test versions of v738 tonight and after testing, if ok, will upload tomorrow.

@joe, thanks for keeping an eye on the thread.

scsijon
Back to top
View user's profile Send_private_message Visit_website 
Display_posts:   Sort by:   
Page 8 of 16 Posts_count   Goto page: Previous 1, 2, 3, ..., 6, 7, 8, 9, 10, ..., 14, 15, 16 Next
Post_new_topic   Reply_to_topic View_previous_topic :: View_next_topic
 Forum index » Advanced Topics » Additional Software (PETs, n' stuff) » Desktop
Jump to:  

Rules_post_cannot
Rules_reply_cannot
Rules_edit_cannot
Rules_delete_cannot
Rules_vote_cannot
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1290s ][ Queries: 13 (0.0084s) ][ GZIP on ]