1. 28 Feb, 2022 7 commits
    • Paul Tvete's avatar
      Optimize vertical flip · f487807a
      Paul Tvete authored
      Don't flip the image at all: just read in the opposite direction,
      and transmit flipped position.
      f487807a
    • Paul Tvete's avatar
      efb4391e
    • Paul Tvete's avatar
      Small optimization · 733d569b
      Paul Tvete authored
      Only convert the images that we are actually going to transmit. TODO:
      We should keep the image as non-converted and only convert the actual
      pixels that we are sending.
      733d569b
    • Paul Tvete's avatar
      QVNCClient refactor part I · c793a77d
      Paul Tvete authored
      Let the client keep a reference to the current image. This is a
      prerequisite for doing RGB swapping and flipping on the fly. In
      addition, this should also fix a theoretical race condition.
      c793a77d
    • Eskil Abrahamsen-Blomfeldt's avatar
      Fix crash on exit · 4cb7e7eb
      Eskil Abrahamsen-Blomfeldt authored
      Bug caused by misreading documentation. The docs say:
      
      "If another socket is created in the reimplementation
       of this method, it needs to be added to the Pending
       Connections mechanism by calling
       addPendingConnection()."
      
      However, this is only if you actually want to use the
      Pending Connection mechanism. When the socket is added
      to this list, it will be deleted by the QTcpServer on
      close, and since it was also deleted by the QVncClient
      this would crash.
      4cb7e7eb
    • Eskil Abrahamsen-Blomfeldt's avatar
      Zero out padding in ServerInit · 77e9efc8
      Eskil Abrahamsen-Blomfeldt authored
      Although the spec does not say the padding has to
      be zero, it looks like RealVNC uses the padding for alpha
      if non-zero.
      77e9efc8
    • Paul Tvete's avatar
      WIP: Use QSGRhiLayer::toImage, remove GL-specific code · ae307655
      Paul Tvete authored
      This should make it work on OpenGL ES, but it is very inefficient
      since it converts the whole image twice for each screen grab
      ae307655
  2. 25 Feb, 2022 1 commit
  3. 24 Feb, 2022 3 commits
  4. 23 Feb, 2022 2 commits
  5. 22 Feb, 2022 3 commits
    • Paul Tvete's avatar
      Add dirty map for partial updates · cfe2371f
      Paul Tvete authored
      cfe2371f
    • Eskil Abrahamsen-Blomfeldt's avatar
      Fix zlib compression · 56548f8d
      Eskil Abrahamsen-Blomfeldt authored
      The specs require that you have a single stream object for the
      connection which does not close until the connection closes,
      retaining state between frames. Failing to do this caused clients
      to error out with Z_STREAM_END, which should never be reached
      as long as the condition is met.
      56548f8d
    • Eskil Abrahamsen-Blomfeldt's avatar
      Some fixes to zlib compression · a4327e52
      Eskil Abrahamsen-Blomfeldt authored
      qCompress() adds the uncompressed length of the buffer to the
      beginning of the stream, which is not part of the protocol.
      
      However, this is still disabled, because while the first frame now
      looks fine, subsequent frames get errors.
      a4327e52
  6. 21 Feb, 2022 1 commit
  7. 18 Feb, 2022 7 commits
  8. 17 Feb, 2022 4 commits
  9. 16 Feb, 2022 10 commits
  10. 15 Feb, 2022 1 commit