0

Background

https://youtrack.jetbrains.com/issue/WI-39812

Something in the application is causing a window or entry to temporarily appear on the task bar (or "Window list" in my panel).

The maintainers asked if I can track the process id or anything, to narrow down what is creating the window.

The taskbar entry only appears temporarily, and usually only as long as the main application has focus. I can hover the entry for a preview image, and right-click it for maximize/minimize, but so far this has not resulted in better understanding where it is coming from.

Linux Mint 18.1 Serena Cinnamon 64-bit

Question

Is there a log file or a monitoring tool in Cinnamon, that provides information about windows opening and closing, or windows currently active, and the originating process?

I assume there is a 1:1 relationship between windows and entries in the task bar. Please correct me if this is not the case. In this case, I am more interested in task bar entries than windows.

Resolution

This section is not part of the question! It just fits better here than in a comment!

The accepted answer by mviereck was helpful.

Here is my version of the commands:

mkdir ~/troubleshooting; cd ~/troubleshooting
sleep 10; wmctrl -lp > list1; xwininfo -root -children -tree > tree1
# Focus on phpstorm, do NOT make the strange window appear.
# Wait long enough!
sleep 10; wmctrl -lp > list2; xwininfo -root -children -tree > tree2
# Focus on phpstorm, do something to let the strange window appear.
# Wait long enough!
diff -U30 list1 list2 > list.diff
diff -U30 tree1 tree2 > tree.diff
# Open in gedit for nice colors.
gedit list.diff tree.diff & disown

These are changes in tree.diff:

 xwininfo: Window id: 0xf5 (the root window) (has no name)

   Root window id: 0xf5 (the root window) (has no name)
   Parent window id: 0x0 (none)
-     44 children:
+     46 children:
+     0x22004e9 "win13": ("sun-awt-X11-XWindowPeer" "jetbrains-phpstorm")  502x224+1209+354  +1209+354
      0x4a0000c (has no name): ()  1x1+-1+-1  +-1+-1
[..]
      0x3c00001 "mintUpdate.py": ("mintUpdate.py" "")  10x10+10+10  +10+10
+     0x22004fc "win15": ("sun-awt-X11-XWindowPeer" "jetbrains-phpstorm")  9x18+1696+355  +1696+355
      0x1a0347e (has no name): ()  1920x1053+0+0  +0+0

This means these two lines were added, but in different positions in tree.diff:

+     0x22004e9 "win13": ("sun-awt-X11-XWindowPeer" "jetbrains-phpstorm")  502x224+1209+354  +1209+354
+     0x22004fc "win15": ("sun-awt-X11-XWindowPeer" "jetbrains-phpstorm")  9x18+1696+355  +1696+355

This is the added line I found in list.diff:

+0x022004fc  0 7177   asus-mint-2017 win15

The label of the task bar entry was "win15", and the preview looked like "9x18" could be the dimensions.

The "win13" did not show up in the task bar.

I will report these findings in https://youtrack.jetbrains.com/issue/WI-39812 and see what they say.

UPDATE after the comment by mviereck:

ps -f -p 7177 shows

USERNAME  7177  7113  8 09:52 ?        00:09:31 /home/USERNAME/phpstorm/jre64/bin/java -classpath /home/USERNAME/phpstorm/lib/bootstrap.jar:...

I am not sure if any private information is in there, so I don't paste the complete thing. But it seems to be the main phpstorm process.

  • 1
    list.diff also shows pid 7177. You can get additional info with ps -f -p 7177 to see the window creating process. – mviereck Feb 19 '18 at 10:06
1

Possibilities to get some infos about the window:

Create window lists with wmctrl and xwininfo. If that strange task bar entry appears, open a terminal and type:

wmctrl -lp > list1
xwininfo -root -children -tree > list3

Change nothing but what is needed to let that entry disappear. Than:

wmctrl -lp >list2
xwininfo -root -children -tree > list4

diff can show you differences between the lists:

diff list1 list2
diff list3 list4

Maybe that gives you some hints. wmctrl -lp also shows the process id (pid) belonging to the window. If you identified the window and it provides a pid, get some infos with ps -f -p PID.

  • What if opening a terminal kills the strange task bar entry? – donquixote Feb 19 '18 at 9:11
  • Ok, I used sleep 10; wmtrl -p > list1 to take a snapshot without giving focus to the terminal. Yeah! And I did produce a diff. Now I need to make something of this information.. – donquixote Feb 19 '18 at 9:21
  • To prevent unrelated noise in the diff, both snapshots need to be taken in the background while the same window (PhpStorm in this case) has focus. – donquixote Feb 19 '18 at 9:32
  • I added a "Resolution" section in my question. – donquixote Feb 19 '18 at 9:46
  • @donquixote Glad I could help :-). Good that you find ways to reduce the noise in diff. – mviereck Feb 19 '18 at 10:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.