Added

  • More robust upgrade tuple window so users don’t think computer is doing nothing

Fixed

  • Resets navigator controls between calls to ensure settings aren’t wacky

Changed

  • New red icon for the topbar when in a call (same logo of not in call but red)

Fixed

  • Closes the popover when alerts appear that your peer is in outdated version or rejected your call
  • Driver label should continue moving when hovering over tuple windows and not get stuck
  • Timestamps are now generated earlier in the logging code which should improve log ordering

Fixed

  • Ensure log stash calls are always on main thread

Changed

  • Sets default RTC logs to ‘warn’

Fixed

  • Sign-In Screen: Cmd-A support, persist input text when hiding, remove unused checkbox, better selectability and autocorrect options
  • Navigator not being able to send text in clipboard between calls
  • Navigator controls should persist between calls

Added

  • Environment string to all log messages

Changed

  • Sign-In Screen opens when unauthenticated user starts app
  • Send button is always enabled on clipboard sender
  • Updated some copy for clarity
  • Cleaned up Preferences layouts
  • Removed General preference pane
  • Use webrtc in release mode for Staging and Release
  • Reorders encoding chart in performance dashboard to Capture -> Encode -> Decode
  • Clicking menu items in performance dashboard closes menu

Fixed

  • Hang up properly when partner disconnects
  • Dark mode text color in incoming call window
  • Perf dashboard not receiving stats

Changed

  • Cursor image being sent to navigator when in highlight click mode
  • WebRTC logging is now routed through TN logs

Added

  • Mojave mouse hardware implementation

Added

  • Support for first and last name

Added

  • Adds automatic sign in/out when internet connection changes
  • Thread introspection utilities to help with debugging
  • Adds double click support
  • Hit ‘Enter’ to send copy to clipboard content
  • New UI that steve designed

Changed

  • Changes the priorities and which threads most of the mouse code is executed on

Fixed

  • Reconnect to availability channel after waking up from sleep
  • Resolution issues when switching displays between sessions
  • App now requests microphone permission on Mojave
  • Cursor cache will always be reset before a new call

Changed

  • Changes to have staging/production environments
  • Purple icon for development and black for stage/production
  • Adds new black tuple icon for staging environment
  • Changes the Gravatar default URL

Added

  • Prevents computer from sleeping when navigating
  • Client will now use Twilio STUN servers, with Google as backup
  • Automatic version governer to ensure clients are always up to date before doing critical actions
  • Alerts for when a call is rejected due to either outdated version or explicit rejection

Changed

  • Simulator has been removed

Fixed

  • Fixes mouse crashes when dragging

Added

  • New performance dashboard in place of the old debug panel
  • Hardware mouse implementation
  • Adds cursor image both ways so the navigator can see what the drivers cursor actually looks like.
  • Adds new icons to the preference panel

Changed

  • How resolutions are determined. Retina support and smoother experience going from 16:10 and 16:9.

Fixed

  • Sign in on mount race condition not logging users in
  • Fixes changing FPS in release mode of webrtc
  • Fixes cursor images getting cut off due to incorrect bit manipulation

Changed

  • Experiment with turning playout delay to {0,0}

Changed

  • Uses debug version of WebRTC instead of release since release has some issues

Changed

  • Disables excluded window
  • Updates frame rate preference to go up to 30 FPS
  • Updates webrtc screenshare maxes

Fixed

  • Crashing the app not hanging up the peer properly
  • Mute by default on debug but not release
  • Calling a user who is no longer online
  • Hide popover when opening the debug panel

Changed

  • Capturer now uses mutex locking for more efficient waiting between frames
  • Capturer times each frame in order to achieve preferred max framerate
  • Capturing uses IOSurface API instead of CG for desktop capturing
  • Rebase master of webrtc into tuple-master

Added

  • New stat report: “Custom Stats”
  • Added first stat to custom stats report: tpAvgCaptureMs

Fixed

  • Bug when clicking on separator in the dropdown menu bar

Added

  • Adds better stats and graphs

Changed

  • Audio on by default

NOTE: Breaking changes due to change in data channels adds clipboard data channel and cursor image data channel.

Added

  • Clipboard events - can copy string to driver and auto open URLs
  • Cursor images get sent to the navigator for a more immersive experience
  • Adds highlight click animation to the navigator window
  • Adds full keyboard controls implementation (can turn hotkeys on/off or keyboard completely on/off)

Changed

  • Adjusted webrtc source to increase kbps and max framerate when is_screencast settings is true
  • Cursor should go to a pointing hand when selecting the highlight click cursor mode

Fixed

  • Framerate control slider fixed
  • Bug with mouse event taps not properly disabling between calls

NOTE: Breaking changes due to change in data channels (adds clipboard data channel)

Added

  • Clipboard events - can copy string to driver and auto open URLs
  • Logstash Logz.io logging so we can track data about the sessions

Changed

  • Stop using the screencast setting in WebRTC

Fixed

  • Framerate control slider fixed

NOTE: Breaking changes due to change in data channels.

Fixed

  • ”Share Icon” popover should be hidden after calling someone
  • Mouse offsets should be correct now
  • Fixes the cursors staying visible when switching applications on the navigator side

Refactors

  • Internals of keyboard event system

Changed

  • Added Resolution and Framerate configuration in Preferences
  • Added screenhero like mouse control
  • Uses a new smaller toolbar

Fixed

  • DesktopScreenCapturer enforces max resolution and framerate
  • Driver-side OnlineUsers UI correctly reflects when a call has been accepted