update python
[enigma2.git] / lib / gdi / fb.cpp
index 96ca4313169aa88cfd6799be0c2f0eb1418af6ad..fb0cc03b053a13bde8d7b10a52481b5eb5e769cc 100644 (file)
@@ -29,9 +29,6 @@ fbClass::fbClass(const char *fb)
        cmap.blue=blue;
        cmap.transp=trans;
 
-       int state=0;
-       eConfig::getInstance()->getKey("/ezap/osd/showConsoleOnFB", state);
-
        fd=open(fb, O_RDWR);
        if (fd<0)
        {
@@ -62,7 +59,7 @@ fbClass::fbClass(const char *fb)
                goto nolfb;
        }
 
-       showConsole(state);
+//     showConsole(0);
        return;
 nolfb:
        lfb=0;
@@ -86,8 +83,10 @@ int fbClass::showConsole(int state)
 
 int fbClass::SetMode(unsigned int nxRes, unsigned int nyRes, unsigned int nbpp)
 {
-       screeninfo.xres_virtual=screeninfo.xres=nxRes;
-       screeninfo.yres_virtual=screeninfo.yres=nyRes;
+/*     screeninfo.xres_virtual=screeninfo.xres=nxRes;
+       screeninfo.yres_virtual=screeninfo.yres=nyRes; */
+       screeninfo.height=0;
+       screeninfo.width=0;
        screeninfo.xoffset=screeninfo.yoffset=0;
        screeninfo.bits_per_pixel=nbpp;
        if (ioctl(fd, FBIOPUT_VSCREENINFO, &screeninfo)<0)
@@ -122,6 +121,7 @@ fbClass::~fbClass()
                ioctl(fd, FBIOPUT_VSCREENINFO, &oldscreen);
        if (lfb)
                munmap(lfb, available);
+       showConsole(1);
 }
 
 int fbClass::PutCMAP()
@@ -131,7 +131,7 @@ int fbClass::PutCMAP()
 
 void fbClass::Box(int x, int y, int width, int height, int color, int backcolor)
 {
-       if (width<=2)
+       if (width<=2 || locked)
                return;
        int offset=y*stride+x/2;
        int first=0xF0|((color&0xF0)>>4);
@@ -149,6 +149,8 @@ void fbClass::Box(int x, int y, int width, int height, int color, int backcolor)
 
 void fbClass::NBox(int x, int y, int width, int height, int color)
 {
+       if (locked)
+               return;
        int offset=y*stride+x/2;
        int halfwidth=width/2;
        for (int ay=y; ay<(y+height); ay++)
@@ -160,6 +162,8 @@ void fbClass::NBox(int x, int y, int width, int height, int color)
 
 void fbClass::VLine(int x, int y, int sy, int color)
 {
+       if (locked)
+               return;
        int offset=y*stride+x/2;
        while (sy--)
        {