1. 16 Jul, 2010 1 commit
    • Joel Martin's avatar
      State machine refactoring. · f00b1e37
      Joel Martin authored
      Add new states 'loaded', 'connect' and 'fatal':
      - Loaded state is first page state. Pass WebSockets mode message using
        this state.
      - Connect indicates that the user has issued a "connect" but we
        haven't gotten an WebSockets onopen yet.
      - Fatal is a condition that indicates inability to continue on: right
        now, lack of WebSockets/Flash or non-working canvas.
      
      Move much of the actual state transition code into updateState.
      
      Handle 'password' state better in default_controls.js; instead of
      disconnecting, prompt for password to send.
      
      Add comments to updateState indicating possible states.
      f00b1e37
  2. 01 Jul, 2010 1 commit
    • Joel Martin's avatar
      Opera works! Fix message event drops/reorders. · a93c9555
      Joel Martin authored
      Instead of relying on FABridge AS -> JS event delivery, we just use
      the events to notify JS of pending data. The message handler then
      calls the AS readSocketData routine which sends back an array of
      the pending WebSocket frames.
      
      There is still a minor bug somewhere that happens after the first
      connect where the web-socket-js throws an "INVALID_STATE_ERR: Web
      Socket connection has not been established". But, Opera is now usable
      and we should be able to drop the packet sequence numbering and
      re-ordering code.
      
      Another minor issue to better support Opera is to move JS script
      includes to the <head> of the page instead of after the body.
      a93c9555
  3. 15 Jun, 2010 2 commits
  4. 14 Jun, 2010 1 commit
  5. 02 Jun, 2010 1 commit
    • Joel Martin's avatar
      Direct example. Move all DOM code default_controls.js. · 91308399
      Joel Martin authored
      Move DOM manipulation into include/default_controls.js and update
      vnc.html to use it.
      
      Add an example vnc_auto.html which automatically connects using
      parameters from the query string and doesn't use default_controls.js.
      
      Reorder functions in vnc.js to put external interface functions at the
      top of the RFB namespace.
      91308399