src/plugins/gfxdrivers/vnc/qscreenvnc_qws.cpp
changeset 19 fcece45ef507
parent 18 2f34d5167611
child 33 3e2da88830cd
equal deleted inserted replaced
18:2f34d5167611 19:fcece45ef507
   323     { 0xffe4, Qt::Key_Control   },
   323     { 0xffe4, Qt::Key_Control   },
   324     { 0xffe7, Qt::Key_Meta      },
   324     { 0xffe7, Qt::Key_Meta      },
   325     { 0xffe8, Qt::Key_Meta      },
   325     { 0xffe8, Qt::Key_Meta      },
   326     { 0xffe9, Qt::Key_Alt       },
   326     { 0xffe9, Qt::Key_Alt       },
   327     { 0xffea, Qt::Key_Alt       },
   327     { 0xffea, Qt::Key_Alt       },
       
   328 
       
   329     { 0xffb0, Qt::Key_0         },
       
   330     { 0xffb1, Qt::Key_1         },
       
   331     { 0xffb2, Qt::Key_2         },
       
   332     { 0xffb3, Qt::Key_3         },
       
   333     { 0xffb4, Qt::Key_4         },
       
   334     { 0xffb5, Qt::Key_5         },
       
   335     { 0xffb6, Qt::Key_6         },
       
   336     { 0xffb7, Qt::Key_7         },
       
   337     { 0xffb8, Qt::Key_8         },
       
   338     { 0xffb9, Qt::Key_9         },
       
   339 
       
   340     { 0xff8d, Qt::Key_Return    },
       
   341     { 0xffaa, Qt::Key_Asterisk  },
       
   342     { 0xffab, Qt::Key_Plus      },
       
   343     { 0xffad, Qt::Key_Minus     },
       
   344     { 0xffae, Qt::Key_Period    },
       
   345     { 0xffaf, Qt::Key_Slash     },
       
   346 
       
   347     { 0xff95, Qt::Key_Home      },
       
   348     { 0xff96, Qt::Key_Left      },
       
   349     { 0xff97, Qt::Key_Up        },
       
   350     { 0xff98, Qt::Key_Right     },
       
   351     { 0xff99, Qt::Key_Down      },
       
   352     { 0xff9a, Qt::Key_PageUp    },
       
   353     { 0xff9b, Qt::Key_PageDown  },
       
   354     { 0xff9c, Qt::Key_End       },
       
   355     { 0xff9e, Qt::Key_Insert    },
       
   356     { 0xff9f, Qt::Key_Delete    },
       
   357 
   328     { 0, 0 }
   358     { 0, 0 }
   329 };
   359 };
   330 
   360 
   331 void QRfbRect::read(QTcpSocket *s)
   361 void QRfbRect::read(QTcpSocket *s)
   332 {
   362 {
   481     while (keyMap[i].keysym && !keycode) {
   511     while (keyMap[i].keysym && !keycode) {
   482         if (keyMap[i].keysym == (int)key)
   512         if (keyMap[i].keysym == (int)key)
   483             keycode = keyMap[i].keycode;
   513             keycode = keyMap[i].keycode;
   484         i++;
   514         i++;
   485     }
   515     }
       
   516 
       
   517     if (keycode >= ' ' && keycode <= '~')
       
   518         unicode = keycode;
       
   519 
   486     if (!keycode) {
   520     if (!keycode) {
   487         if (key <= 0xff) {
   521         if (key <= 0xff) {
   488             unicode = key;
   522             unicode = key;
   489             if (key >= 'a' && key <= 'z')
   523             if (key >= 'a' && key <= 'z')
   490                 keycode = Qt::Key_A + key - 'a';
   524                 keycode = Qt::Key_A + key - 'a';
  2127         driver.truncate(colon);
  2161         driver.truncate(colon);
  2128 
  2162 
  2129     if (QScreenDriverFactory::keys().contains(driver, Qt::CaseInsensitive)) {
  2163     if (QScreenDriverFactory::keys().contains(driver, Qt::CaseInsensitive)) {
  2130         const int id = getDisplayId(dspec);
  2164         const int id = getDisplayId(dspec);
  2131         QScreen *s = qt_get_screen(id, dspec.toLatin1().constData());
  2165         QScreen *s = qt_get_screen(id, dspec.toLatin1().constData());
       
  2166         if (s->pixelFormat() == QImage::Format_Indexed8
       
  2167             || s->pixelFormat() == QImage::Format_Invalid && s->depth() == 8)
       
  2168             qFatal("QVNCScreen: unsupported screen format");
  2132         setScreen(s);
  2169         setScreen(s);
  2133     } else { // create virtual screen
  2170     } else { // create virtual screen
  2134 #if Q_BYTE_ORDER == Q_BIG_ENDIAN
  2171 #if Q_BYTE_ORDER == Q_BIG_ENDIAN
  2135         QScreen::setFrameBufferLittleEndian(false);
  2172         QScreen::setFrameBufferLittleEndian(false);
  2136 #endif
  2173 #endif