Summary: | konsole does not always honor '--display' | ||
---|---|---|---|
Product: | [Applications] konsole | Reporter: | jcwoods |
Component: | single-process | Assignee: | Konsole Developer <konsole-devel> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | adaptee |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | http://commits.kde.org/konsole/6b811ec2b6e4fbf459af9765c9ead506c9a0cd3c | Version Fixed In: | 4.9.0 |
Sentry Crash Report: |
Description
jcwoods
2012-04-09 20:15:21 UTC
Thanks for reporting. Your problem sounds quite similar to or related with bug 297224. See comment #1 in that bug report for why Konsole behave differently when started from a terminal emulator. "For instance, if I use the K-menu on screen 0:0 to launch the "Konsole 0.1" shortcut, the konsole appears on :0.0." When you do that, is there any konsole already running on :0.0 ? Redirecting stdout to /dev/null does allow me to reproduce the problem from the command line. "konsole --display :0.1" will always start a new konsole on :0.1 when run in a konsole on screen :0.0. "konsole --display :0.1 >/dev/null" will not start a konsole on :0.1 when run in a konsole on :0.0. Interestingly, if I have no konsole processes running on any screen, the "konsole :0.0" and "konsole :0.1" shortcuts will always work as expected. If I have a konsole on :0.0, the "konsole :0.1" shortcut will never launch on :0.1. Likewise, if I only have a konsole running on :0.1, I cannot launch a konsole on :0.0 from the shortcut. (In reply to comment #2) > Redirecting stdout to /dev/null does allow me to reproduce the problem from > the command line. "konsole --display :0.1" will always start a new konsole > on :0.1 when run in a konsole on screen :0.0. "konsole --display :0.1 > >/dev/null" will not start a konsole on :0.1 when run in a konsole on :0.0. > > Interestingly, if I have no konsole processes running on any screen, the > "konsole :0.0" and "konsole :0.1" shortcuts will always work as expected. > If I have a konsole on :0.0, the "konsole :0.1" shortcut will never launch > on :0.1. Likewise, if I only have a konsole running on :0.1, I cannot > launch a konsole on :0.0 from the shortcut. Thanks for your feedback. So that is the "expected buggy behavior". The thing is just that Konsole tries to keep all opened konsole windows running in the same process, which in turn means all those konsole windows are shown on the same display(more precisely, the display where the first konsole window opened through menu/icon/shortcut is shown) That "single process" model makes sense most of time, but clearly not when user has specified the --display option. The logical behavior should be always creating a new process to make sure the new konsole window are shown on the specified dispaly. Unfortunately, currently Konsole simply does not check and treat --display option in a special way. Actually there are other Qt options which do not work well with this "single process" model, like --session, --reverse, --graphicssystem, etc. So to sum it up, this is a known issue. I will try to do something to improve this situation in KDE SC 4.9 . Git commit 6b811ec2b6e4fbf459af9765c9ead506c9a0cd3c by Jekyll Wu. Committed on 18/04/2012 at 10:04. Pushed by jekyllwu into branch 'master'. Konsole should use new process when some Qt/KDE options are given One typical option is "--display", because two konsole windows belonging to the same process are destined to be shown in the same display, which defeats the purpose of the "--display" option Related: bug 179010, bug 297224 FIXED-IN: 4.9.0 REVIEW: 104653 M +28 -0 src/main.cpp http://commits.kde.org/konsole/6b811ec2b6e4fbf459af9765c9ead506c9a0cd3c While this is certainly an improvement, is this going to break collaberation between processes within a display? For instance, I launch (using the shortcut in K-menu at the top of this bug) two konsole processes on display :0.1. Because each was launched with the '--display' flag -- even though they are both to the same screen -- they will run as two separate processes. Will I still be able to do things like dragging a tab between two windows (now in two different processes)? (In reply to comment #5) > While this is certainly an improvement, is this going to break collaberation > between processes within a display? > > For instance, I launch (using the shortcut in K-menu at the top of this bug) > two konsole processes on display :0.1. Because each was launched with the > '--display' flag -- even though they are both to the same screen -- they > will run as two separate processes. Will I still be able to do things like > dragging a tab between two windows (now in two different processes)? Unfortunately, dragging tab between two processes is impossible. |