Skip to content
This repository has been archived by the owner on Jul 7, 2019. It is now read-only.

Issue with app Windows listing the same window more than once. #63

Closed
Zerophase opened this issue Dec 23, 2016 · 21 comments
Closed

Issue with app Windows listing the same window more than once. #63

Zerophase opened this issue Dec 23, 2016 · 21 comments
Labels

Comments

@Zerophase
Copy link

If this issue is a bug report, please list your:

  • Cinnamon 3.2.1
  • Icingtaskmanager 4.0.9
  • Arch Linux
  • ~/.cinnamon/configs/IcingTaskManager@json/*.json

{
"WindowList": {
"type": "header",
"description": "Window List Settings"
},
"seperator1": {
"type": "separator"
},
"number-display": {
"type": "combobox",
"default": 1,
"description": "Number display",
"options": {
"Smart": 1,
"Normal": 2,
"None": 3,
"All": 4
},
"tooltip": "normal: display window number, smart: display window number if more than one window, none: don't display number, all: display window number for favorites too",
"value": 1
},
"title-display": {
"type": "combobox",
"default": 1,
"description": "Title display",
"options": {
"None": 1,
"App": 2,
"Title": 3,
"Focused": 4
},
"tooltip": "focused: show focused window title, title: display the window title, app: diplay app name, none: don't display anything",
"value": 1
},
"pinned-apps": {
"type": "generic",
"default": [],
"value": [
"brave.desktop",
"google-chrome.desktop",
"nemo.desktop",
"jetbrains-clion.desktop",
"codelite.desktop",
"rider-eap.desktop",
"rubymine.desktop",
"pycharm-professional.desktop",
"sublime_text_3.desktop",
"visual-studio-code.desktop",
"UE4Editor.desktop",
"smartgit.desktop",
"sqliteman.desktop",
"virtualbox.desktop",
"teamviewer.desktop"
]
},
"group-apps": {
"type": "checkbox",
"default": true,
"description": "Group apps",
"tooltip": "Group each app's set of windows.",
"value": true
},
"show-active": {
"type": "checkbox",
"default": true,
"description": "Show active app indicators",
"tooltip": "Active app styling will indicate if an app is active.",
"value": true
},
"show-alerts": {
"type": "checkbox",
"default": true,
"description": "Show app alerts and notifications",
"tooltip": "If enabled, notifications and alerts will appear.",
"value": true
},
"show-pinned": {
"type": "checkbox",
"default": true,
"description": "Show pinned apps",
"tooltip": "Controls whether or not the pinned apps appear in the panel if they are not open.",
"value": true
},
"arrange-pinnedApps": {
"type": "checkbox",
"default": true,
"description": "Arrange pinned apps",
"tooltip": "Arrange pinned apps into a different order.",
"value": false
},
"icon-spacing": {
"type": "spinbutton",
"default": 7,
"min": 0,
"max": 15,
"step": 1,
"units": "px",
"description": "Icon spacing",
"tooltip": "Controls how much space is between the icons.",
"value": 7
},
"icon-padding": {
"type": "spinbutton",
"default": 0,
"min": 0,
"max": 15,
"step": 1,
"units": "px",
"description": "Icon padding",
"tooltip": "Controls how much horizontal padding is inside the app buttons. Padding is only applied to instances of this applet on horizontal panels.",
"value": 7
},
"enable-iconSize": {
"type": "checkbox",
"default": false,
"description": "Adjust icon size",
"tooltip": "Adjust icon size independent of Cinnamon's panel scaling.",
"value": false
},
"icon-size": {
"type": "spinbutton",
"default": 20,
"min": 0,
"max": 150,
"step": 1,
"units": "px",
"description": "Icon size",
"tooltip": "Set icon size",
"value": 20
},
"HoverPeek": {
"type": "header",
"description": "Hover Peek Settings"
},
"seperator2": {
"type": "separator"
},
"enable-hover-peek": {
"type": "checkbox",
"default": false,
"description": "Show windows when hovered over",
"tooltip": "Controls whether or not windows display when hovered over.",
"value": true
},
"hover-peek-time": {
"type": "spinbutton",
"default": 150,
"min": 0,
"max": 1000,
"step": 5,
"units": "milliseconds",
"description": "Window fade time",
"tooltip": "Controls how quickly a window will fade on hover.",
"value": 50
},
"hover-peek-opacity": {
"type": "spinbutton",
"default": 10,
"min": 0,
"max": 100,
"step": 2,
"units": "percent",
"description": "Window opacity",
"tooltip": "Opacity of the windows on hover.",
"value": 10
},
"Thumbnails": {
"type": "header",
"description": "Thumbnail Settings"
},
"seperator3": {
"type": "separator"
},
"thumbnail-timeout": {
"type": "spinbutton",
"default": 50,
"min": 0,
"max": 5000,
"step": 5,
"units": "milliseconds",
"description": "Thumbnail timeout",
"tooltip": "Controls how quickly an app's set of window thumbnails will fade out when the mouse leaves the app button.",
"value": 50
},
"thumbnail-size": {
"type": "spinbutton",
"default": 6,
"min": 0,
"max": 100,
"step": 1,
"units": "size",
"description": "Thumbnail size",
"tooltip": "Controls the size of the thumbnails.",
"value": 6
},
"show-thumbnails": {
"type": "checkbox",
"default": true,
"description": "Show thumbnails",
"tooltip": "Show window thumbnails when hovering over an app button.",
"value": true
},
"animate-thumbnails": {
"type": "checkbox",
"default": false,
"description": "Animate thumbnails",
"tooltip": "If enabled, thumbnails will animate when appearing and disappearing.",
"value": false
},
"vertical-thumbnails": {
"type": "checkbox",
"default": false,
"description": "Enable vertical thumbnails",
"tooltip": "If enabled, thumbnails will stack vertically.",
"value": false
},
"sort-thumbnails": {
"type": "checkbox",
"default": false,
"description": "Sort windows for each app by last focused",
"tooltip": "Controls whether the order windows appear for an app is by last focused, or the order they were opened.",
"value": true
},
"onclick-thumbnails": {
"type": "checkbox",
"default": false,
"description": "Open thumbnails on click",
"tooltip": "Open the thumbnails on click if there is more than one window open.",
"value": false
},
"close-button-style": {
"type": "checkbox",
"default": false,
"description": "Allow themes to control the thumbnail close button",
"tooltip": "Controls whether or not the theme controls the window thumbnail's close button.",
"value": true
},
"include-all-windows": {
"type": "checkbox",
"default": false,
"description": "Include all app windows",
"tooltip": "Controls whether or not thumbnails for smalller child windows, such as exit confirmations and file dialogues will be included in the thumbnail list.",
"value": true
},
"AppMenu": {
"type": "header",
"description": "Context Menu Settings"
},
"seperator4": {
"type": "separator"
},
"show-recent": {
"type": "checkbox",
"default": true,
"description": "Show recent items",
"tooltip": "Controls whether recent items will appear in the context menu.",
"value": true
},
"autostart-menu-item": {
"type": "checkbox",
"default": true,
"description": "Show autostart option",
"tooltip": "Shows the autostart toggle option in an app's context menu.",
"value": true
},
"firefox-menu": {
"type": "combobox",
"default": 1,
"description": "Firefox context menu",
"options": {
"Most Visited": 1,
"Recent History": 2,
"Bookmarks": 3
},
"tooltip": "Most Visited: show the sites you visit most, Recent History: display the the last pages you visited, Bookmarks: show your favorite bookmarks.",
"value": 1
},
"md5": "f74563ccbb10c867af6bda5706daed36"
}

  • In order to cause the bug you need to open at least two windows of an app, with the second window being opened by using an action within the app. (I've seen it happen for CLion and Chrome. In CLion create a new project and open it in a different window than the current one, and for Chrome just break a tab off into a separate window)
  • Minimize and resize the window until the popup selections start duplicating a window.
@jaszhix
Copy link
Owner

jaszhix commented Dec 23, 2016

Looks like the sort thumbnails option is causing this. I'll take a look at it.

Edit: I was able to reproduce this once with "Include all windows" off and sort thumbnails on after a Cinnamon restart, but can't reproduce it reliably after toggling the settings and restarting again. I also noticed sort thumbnails doesn't seem to work anymore.

@jaszhix
Copy link
Owner

jaszhix commented Dec 23, 2016

Would you be able to test this version and see if it helps? I fixed the thumbnails not sorting correctly, but I wasn't able to reproduce your issue again. ITM-dist-1482494905837.zip

@Zerophase
Copy link
Author

Zerophase commented Dec 23, 2016

Yeah, it's still doing it. Here's some screenshots of my settings incase that helps.

screenshot_1482523183

screenshot_1482523193

@jaszhix
Copy link
Owner

jaszhix commented Dec 24, 2016

I think I reproduced this with the "hoverpeek" effect. The thumbnails are correct, but the hoverpeek overlay shows the wrong window, otherwise clicking it will focus the correct window. Is this the same for you? Also, do you use a multi-monitor setup?

@Zerophase
Copy link
Author

I just have one monitor up currently. If I click on the windows they both go to the same window.

@jaszhix
Copy link
Owner

jaszhix commented Dec 24, 2016

I'm still not able to reproduce it. Are you able to upgrade to 3.2.7 and see if it makes any difference? Not that it will, just never hurts to be on the latest patch version.

@zqq90
Copy link
Contributor

zqq90 commented Dec 24, 2016

If I understand correctly, i got the same issue too, several times, but only gnome-terminal

@jaszhix
Copy link
Owner

jaszhix commented Dec 24, 2016

I couldn't reproduce it with gnome-terminal, but I'll keep an eye out for this bug.

@Zerophase
Copy link
Author

Zerophase commented Dec 24, 2016

@jaszhix Just upgraded to 3.2.7 and the issue is still happening.

@Zerophase
Copy link
Author

Zerophase commented Jan 2, 2017

Ok, this is how I got it to happen everytime with Chrome.

  1. Open 2 Chrome windows.
  2. Place each on a separate site.
  3. Restart the computer. (To trigger the Chrome bug requiring it to be restored)
  4. Once back in your desktop open Chrome and restore the windows.
  5. Give it a sec and you should see both windows for chrome are the same one.

@jaszhix
Copy link
Owner

jaszhix commented Jan 2, 2017

I always have two chrome windows open, and I haven't reproduced it this way. I do occasionally reproduce it with chrome on accident after its been running, but its hard to do it intentionally. When it does occur, it never stays persistent for me, activating a window resets it. I'll look at that part of the code again soon and see if I can find some test fixes you can test.

By the way, you don't need to reboot your computer to get chrome to relaunch in its current state. Just type chrome://restart in the address bar.

@Zerophase
Copy link
Author

Zerophase commented Jan 2, 2017

Yeah, that makes sense. I'm just rebooting since it triggers Chrome needing to restore the previous tabs.

I have to hit a button everytime I start up since Chrome doesn't shut down correctly. I think Chrome is killing itself with SIGKILL at some point, when I shut down.

@zqq90
Copy link
Contributor

zqq90 commented Jan 3, 2017

@jaszhix @Zerophase restart cinnamon (ALT+F2 then type r) will fix this problem temporary.

more:

  • when focus the problem window, two thumbnails all have a highlight style.
  • window-counter is correct

@zqq90
Copy link
Contributor

zqq90 commented Jan 3, 2017

@jaszhix
reproduce:

  1. open 3 window of one app. (like, Shift + Super + 1 x3)
  2. focus the second window, and close it (use hotkey or close botton on the window, must not by thumbnail) (like: Super + 1 x2, Alt + F4)
  3. focus the third one. dada! catch it ? (like: Super + 1 x2)

cc @Zerophase

jaszhix added a commit that referenced this issue Jan 3, 2017
@jaszhix
Copy link
Owner

jaszhix commented Jan 3, 2017

@Zerophase @zqq90

Try this build. I added an extra check that determines if a new window thumbnail is added or reused.

ITM-dist-1483459553730.zip

@Zerophase
Copy link
Author

Yeah, that seems to work.

@zqq90
Copy link
Contributor

zqq90 commented Jan 4, 2017

@jaszhix
i tried, reproduced, by last comment
@Zerophase
did you do what i said at my last comment ?

@jaszhix
Copy link
Owner

jaszhix commented Jan 4, 2017

@zqq90 I wasn't able to reproduce it the way you described. I've only seen this occur twice, and usually its when I'm editing code and refreshing the applet, which usually makes it run slower until Cinnamon is restarted. This is more likely to trigger bugs from functions being deferred with the setTimeout wrapper. Going forward I'm going to try to reduce the amount of deferring going on, its usually just a convenient workaround for a deeper issue.

Edit: Also, I think the applet gets slower after several reloads because there are signals that are not getting destroyed.

@Zerophase
Copy link
Author

@zqq90 I just tried what you suggested, and I'm not seeing the issue show itself again.

@zquestz
Copy link

zquestz commented Jan 5, 2017

I am also seeing this issue. Can try the build you linked, any ETA on merging the fix?

@jaszhix
Copy link
Owner

jaszhix commented Jan 5, 2017

The fix is merged. There's a lot of changes on the master branch, so I'm spending a bit more time testing everything. Also, I can't update the applet on Cinnamon Spices right now. I will have a new Github release up soon.
screenshot from 2017-01-04 21-57-06

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

4 participants