Summary: | Snapping a region does not work with dual-head setup. | ||
---|---|---|---|
Product: | [Unmaintained] ksnapshot | Reporter: | Thomas Zander <zander> |
Component: | general | Assignee: | Richard Moore <rich> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | jens-bugs.kde.org, mail, mss, p92, pascal, pierre.linux59 |
Priority: | NOR | ||
Version: | 0.7 | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Thomas Zander
2004-01-08 09:49:02 UTC
With Xinerama I get another nice effect: If I start ksnapshot on my right screen and choose to snap a region, it shifts the whole screen right so that the right screen has the contents of the left one. It really shifts the screen and does not replace the right with the left which I can see because I have the weird overall resolution of 1824x768 :) Yes, I can second that bug. It is currently impossible to take a snapshot of the _second_ monitor contents in "region" mode. Using CVS from 2-jan-2004. Malte S. Stretz : you've misiterpreted what happenned. You're seing a picture of one monitor on the other monitor. No, that's not right. I see the whole Xinerama screen on the right monitor. As I wrote before, do I ahve a resolution of 1824x768. That means, I have a 800x768 screen (vertically virtually extended) on the left and 1024x768 on the right. So if I'd see the left screen on the right one, I'd have some "undefined" space between pixel 801-1024. What I actually see are the left 224 pixels of the right screen, so the while viewport is "shifted" to the right. But actually, I don't care *what* is wrong as long as it gets fixed ;-) Subject: Re: Snapping a region does not work with dual-head setup.
On Friday 16 January 2004 19:23, you wrote:
> But actually, I don't care *what* is wrong as long as it gets fixed ;-)
The trouble is that I coded every grab mode /except/ this one. I fixed the
most horrendous bug, but I think it really needs a rewrite (just that grab
mode). This will have to wait for 3.2.1 I think unless I can figure out a
band-aid fix.
Rich.
To me this bug isn't really grave. I can still grab the whole screen and feed it to GIMP as I always did. Just a reminder -- this is still baffling behavior in dual-head mode, though the previous comments fit the facts. Dual-head is of course very useful for screen captures, since you can see put the screen capture program itself out of the way of what you're capturing. So having region select work in dual head is important... BTW, the three available modes are not mentioned in the documentation. Cheers, Dave I was just playing with this again to see if there were any changes made to it... appears that there weren't. However in the process of playing I noticed something that allowed me to bypass this bug. When the KSnapshot dialog box is in the right window, then the left window will be copied to the right window (in other words... you will have two copies of the left window.) When the KSnapshot dialog is in the left window to start then this bug does not occur and you are able to see both windows and take region snapshots from both of them. There is still a bug there, but at least it isn't so crippling with this workaround. FYI I think this is related to the kwin xinerama issue I reported (#106864). But I'm not sure since it's not my computer I tested it on. SVN commit 490817 by tokoe: Fixed region grab with dual head setup BUGS: 72118 106868 102648 M +8 -0 regiongrabber.cpp --- branches/KDE/3.5/kdegraphics/ksnapshot/regiongrabber.cpp #490816:490817 @@ -89,6 +89,14 @@ pixmap = QPixmap::grabWindow( qt_xrootwin() ); setPaletteBackgroundPixmap( pixmap ); + QDesktopWidget desktopWidget; + QRect desktopSize; + if ( desktopWidget.isVirtualDesktop() ) + desktopSize = desktopWidget.geometry(); + else + desktopSize = desktopWidget.screenGeometry( qt_xrootwin() ); + + setGeometry( desktopSize ); showFullScreen(); QApplication::setOverrideCursor( crossCursor ); Hi I'm facing the issue using KDE 3.5.2 and X.org 7.0 on kUbuntu dapper. When trying to grab a zone, the first screen picture is copied to the second screen, making it impossible to grab a zone of the second screen... Is this patch supposed to be in KDE 3.5.2, or is it going to be in KDE 3.5.3 only ? I confirm and second this, this is extremely annoying and seemed to appear upon kde 3.5.2. p92 : what's your distrib ? It first looked like a dapper-specific issue, but if you can confirm this on other distribs... yes unfortunately i run dapper and opened this bug : https://launchpad.net/distros/ubuntu/+source/xserver-xorg/+bug/37992 Your report on launchpad is wrong. It doesn't switch to clone mode ! It shows a window fullscreen on the second screen, that's different... More likely a Qt, kdelibs or kwin issue. I confirm and second this bug (KDE 3.5.2, SuSE 10 RPMs). pierre: I changed my bug description in kubuntu dapper. Why was this bug closed? The problem still exists on 3.5.3 (Gentoo). If it was fixed in CVS, please inform about this before closing a bug. Thank you. This bug still exists, using KDE 3.5.2 or 3.5.3 in Gentoo Linux. Please reopen the bug, or inform why it should remain marked as "resolved". Thank you! The problem was closed because someone made patch they said fixed it and the patch was applied. I don't have xinerama so I can't test xinerama stuff myself - if someone wants to give me a graphics card and a second monitor then i'll take a look. Rich. On 29 Jun 2006 11:20:25 -0000, Johan Ekenberg <johan@ekenberg.se> wrote: [bugs.kde.org quoted mail] Am Donnerstag, 29. Juni 2006 15:04 schrieb Richard Moore: > > ------- Additional Comments From rich kde org 2006-06-29 15:04 ------- > The problem was closed because someone made patch they said fixed it > and the patch was applied. I don't have xinerama so I can't test > xinerama stuff myself - if someone wants to give me a graphics card > and a second monitor then i'll take a look. > > Rich. Someone was me. I did some tests; Lubos gave me the hint WX11BypassWM and applied the patch. Something in KWin may have changed since Dec. 2005 that prevents "crazy" QWidgets to be shown anywhere. This makes WX11BypassWM necessary in this special case. This technique is used in SizeTip too. (And of course the patch conflicts with SizeTip ...) The next fix I'll send you directly. Excause me please. Bernhard PS: I'am curios to know ho to combine two toplevel-widgets. Do you have any idea? On 29 Jun 2006 13:47:08 -0000, bernhard@schiffner-limbach.de > > ------- Additional Comments From bernhard schiffner-limbach de 2006-06-29 15:47 ------- > Am Donnerstag, 29. Juni 2006 15:04 schrieb Richard Moore: > > > > ------- Additional Comments From rich kde org 2006-06-29 15:04 ------- > > The problem was closed because someone made patch they said fixed it > > and the patch was applied. I don't have xinerama so I can't test > > xinerama stuff myself - if someone wants to give me a graphics card > > and a second monitor then i'll take a look. > > > > Rich. > > > Someone was me. I did some tests; Lubos gave me the hint WX11BypassWM and > applied the patch. > Something in KWin may have changed since Dec. 2005 that > prevents "crazy" QWidgets to be shown anywhere. > This makes WX11BypassWM necessary in this special case. > This technique is used in SizeTip too. > (And of course the patch conflicts with SizeTip ...) > > The next fix I'll send you directly. > Excause me please. No problem, I talked to Lubos and it looks like problem is the combination of bypasswm with showfullScreen() etc. In order to get it to work we'll need to manaually implement showFullScreen(). > > Bernhard > > PS: I'am curios to know ho to combine two toplevel-widgets. Do you have any > idea? > I'm not sure what you mean. Cheers Rich. In kde 3.5.4 it seems to work now, but just after the snapshot is done, kwin crashes. Relaunching kwin shows ksnapshot is still present and ready to record the snapshot. and this is the kwin crash. Maybe I have to open a bug on kwin... (no debugging symbols found) Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1". (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) [Thread debugging using libthread_db enabled] [New Thread -1229252928 (LWP 18222)] (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) [KCrash handler] #6 0xb7ecbbdf in KWinInternal::Client::screen () from /usr/lib/libkdeinit_kwin.so #7 0xb7f06dce in KWinInternal::Workspace::activateNextClient () from /usr/lib/libkdeinit_kwin.so #8 0xb7f150be in KWinInternal::Workspace::workspaceEvent () from /usr/lib/libkdeinit_kwin.so #9 0xb7f15114 in KWinInternal::Application::x11EventFilter () from /usr/lib/libkdeinit_kwin.so #10 0xb708f457 in qt_set_x11_event_filter () from /usr/lib/libqt-mt.so.3 #11 0xb709c74c in QApplication::x11ProcessEvent () from /usr/lib/libqt-mt.so.3 #12 0xb70b64db in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3 #13 0xb712a947 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3 #14 0xb712a86a in QEventLoop::exec () from /usr/lib/libqt-mt.so.3 #15 0xb7110965 in QApplication::exec () from /usr/lib/libqt-mt.so.3 #16 0xb7f16a63 in kdemain () from /usr/lib/libkdeinit_kwin.so #17 0xb7c74ea2 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6 #18 0x080483b1 in ?? () Fix in trunk as of revision 737899. |