ForceRotation

(force rotate screen orientaion of N900)
 
(One intermediate revision not shown)
Line 1: Line 1:
-
If you need the way to force some rotation of your N900 screen, this is for you.
+
#REDIRECT [[Using Fremantle widgets#Forcing screen rotation]]
-
 
+
-
/*
+
-
gcc rotate.c -lX11 -lXrandr
+
-
*/
+
-
#include <X11/Xlib.h>
+
-
#include <X11/extensions/Xrandr.h>
+
-
+
-
static void set_rotation (Rotation r_to) {
+
-
    Rotation r;
+
-
    int screen = -1;
+
-
    XRRScreenConfiguration* config;
+
-
    int current_size=0;
+
-
+
-
    Display* display;
+
-
    Window rootWindow;
+
-
   
+
-
        display = XOpenDisplay(":0");
+
-
        if (display == NULL) {
+
-
        return;
+
-
        }
+
-
+
-
        screen = DefaultScreen(display);
+
-
        rootWindow = RootWindow(display, screen);
+
-
        XRRRotations(display, screen, &r);
+
-
        config = XRRGetScreenInfo(display, rootWindow);
+
-
        current_size = XRRConfigCurrentConfiguration (config, &r);
+
-
        XRRSetScreenConfig(display, config, rootWindow, current_size, r_to, CurrentTime);
+
-
}
+
-
+
-
int main (int argc, char *argv[]) {
+
-
  set_rotation(RR_Rotate_90);
+
-
  //set_rotation(RR_Rotate_270);
+
-
  //set_rotation(RR_Rotate_180);
+
-
  //set_rotation(RR_Rotate_0);
+
-
}
+

Latest revision as of 08:52, 4 May 2011

  1. REDIRECT Using Fremantle widgets#Forcing screen rotation