OESF | ELSI | pdaXrom | OpenZaurus | Zaurus Themes | Community Links | Ibiblio

IPB

Welcome Guest ( Log In | Register )

 
Reply to this topicStart new topic
> Fvwm With Xrandr, Problems on 1.1.0beta1
Christoph
post Oct 25 2007, 11:23 PM
Post #1





Group: Members
Posts: 42
Joined: 30-September 04
From: Luxembourg
Member No.: 4,819



Hi developpers,

after hours of searching and trial and error I finally give up and ask you for help. Perhaps someone knows what I am doing wrong.
Some time ago I hacked a bit with fvwm to make it support xrandr, i.e. the viewport gets updated and the menus show up in the
right place. This hack worked fine with Angstrom (->xorg-1.3.0.x). But as this distro does not have the applications I want I switched back
to pdaXrom 1.1.0beta1. And here (->xfree-4.4.0) xrandr does not work. The problem is especially that the event is promoted to fvwm, but
the XRRScreenChangeNotifyEvent does not have the new width and height. Consequently DisplayWidh(...) does return the old width
even after having called XRRUpdateConfiguration(...). On the other hand the field "rotation" is updated.
Does anyone have an idea why?
One more information: I installed icewm from the feed which supports xrandr well. If I compile it myself it has the same problem.
Perhaps it is just a matter of compilation options?

I'd really appreciate if someone could help.

Christoph
Go to the top of the page
 
+Quote Post
InSearchOf
post Oct 26 2007, 04:05 AM
Post #2





Group: Admin
Posts: 1,210
Joined: 20-January 06
From: York, Pennsylvania
Member No.: 8,961



it is an icewm patch that makes the rotation work
CODE
--- icewm/src/wmmgr.cc~ 2005-03-15 23:42:41.000000000 +0000
+++ icewm/src/wmmgr.cc 2005-03-15 23:58:20.000000000 +0000
@@ -70,6 +70,7 @@
XRRScreenChangeSelectInput(xapp->display(), handle(), True);
#endif
}
+ rotation = RR_Rotate_0;
#endif

fTopWin = new YWindow();;
@@ -2654,13 +2655,19 @@
#endif

if (width() != xrrsc.width ||
- height() != xrrsc.height)
+ height() != xrrsc.height ||
+ rotation != xrrsc.rotation)
{

MSG(("xrandr: %d %d",
xrrsc.width,
xrrsc.height));
- setSize(xrrsc.width, xrrsc.height);
+ if (xrrsc.rotation == RR_Rotate_0 ||
+ xrrsc.rotation == RR_Rotate_180)
+ setSize(xrrsc.width, xrrsc.height);
+ else
+ setSize(xrrsc.height, xrrsc.width);
+
updateXineramaInfo();
updateWorkArea();
#ifdef CONFIG_TASKBAR
@@ -2672,6 +2679,7 @@
#endif
#warning "make something better"
wmapp->actionPerformed(actionArrange, 0);
+ rotation = xrrsc.rotation;
}
}
#endif


AND

CODE

--- icewm/src/wmmgr.h~ 2005-03-15 23:41:45.000000000 +0000
+++ icewm/src/wmmgr.h 2005-03-15 23:42:27.000000000 +0000
@@ -237,6 +237,9 @@
bool fFullscreenEnabled;

WMState fWmState;
+#ifdef CONFIG_XRANDR
+ Rotation rotation;
+#endif
};

extern YWindowManager *manager;


I havent played with fvwm so really couldnt point you in the correct direction, but I would have to look at fvwm to determine the issue... I'm busying gettin pdaXrom 2.0 squared away so I dont know when I would have a chance to look at it... Hopefully one of the other devs or community members can pop in and give you some advise.

Late
Go to the top of the page
 
+Quote Post
Christoph
post Oct 26 2007, 04:23 AM
Post #3





Group: Members
Posts: 42
Joined: 30-September 04
From: Luxembourg
Member No.: 4,819



Hi Late,

thank you for your fast answer! This is exactly what I didn't want to hear sad.gif
I hoped I had made a mistake that after having corrected it would result in DisplayWidth
returning the right dimensions. I already started doing it the way the diff of icewm indicates,
but zoom still does not work.
I suspect there are plenty of places where fvwm calls DisplayWidth. So I would have
to replace them.

Just an additional question: Do you know if this is just a bug of xfree 4.4.0 or
is this difference in behaviour to xorg intentional?

Christoph
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 1st September 2014 - 05:45 AM