aboutsummaryrefslogtreecommitdiffstats
path: root/vncviewer
Commit message (Collapse)AuthorAgeFilesLines
* Filter out alpha channel for normal draw() operationPierre Ossman2017-04-281-3/+11
| | | | | | | macOS actually uses the alpha channel on windows, so we can get visual artifacts if we feed it bogus alpha data. This filtering unfortunately causes some CPU usage, but it's necessary until we can make sure the framebuffer always contains proper 0xff for alpha.
* Use correct color space for current monitorPierre Ossman2017-04-283-26/+46
| | | | | | We won't always be on the primary monitor, so check which color space we're actually using right now. For offscreen stuff we assume a standard sRGB color space.
* Create new CGImage for each drawPierre Ossman2017-04-282-36/+46
| | | | | | The system expects these to be immutable, so changing the data after creation only works in some special cases. We need to recreate the CGImage object each time we've changed something.
* Use sub-image instead of clippingPierre Ossman2017-04-281-18/+18
| | | | It seems to be more efficient.
* Only draw overlays when neededPierre Ossman2017-04-281-8/+12
| | | | Some backends don't like empty draw operations, so have an early check.
* Be more restrictive with shared memory mode bitsPierre Ossman2017-03-291-1/+1
| | | | Everyone else seems to get by with using 0600, so let's do the same.
* Avoid leaking shared memory via X serverPierre Ossman2017-03-291-0/+1
| | | | | It's not enough that we detach from the shared memory, we must also tell the X server to do so for it to be freed properly.
* Update visible copyright year to 2017Samuel Mannehed2017-03-202-2/+2
|
* Fix for "Invalid use of member 'stats' in static member function"Brian P. Hinz2017-03-101-2/+2
|
* Display performance statistics in viewerPierre Ossman2017-02-244-2/+199
| | | | | | Adds an optional graph to the viewer to display current frame rate, pixel rate and network bandwidth. Makes it easier to debug and test performance related issues.
* Get correct text width for overlayPierre Ossman2017-02-241-0/+1
| | | | Incoming width specifies wrapping width, and we do not want any wrapping.
* Change cursor API to use RGBA dataPierre Ossman2017-02-226-41/+15
| | | | | This will allow us to use better formats that preserve the entire alpha channel.
* Add missing headersAlexander Zakharov2017-02-141-0/+3
|
* Fade overlay in and outPierre Ossman2017-02-106-28/+84
|
* Add overlay tip to help find the context menuPierre Ossman2017-02-102-10/+173
|
* Add alpha blending support to surfacesPierre Ossman2017-02-105-17/+129
|
* Render on a temporary surface when neededPierre Ossman2017-02-108-32/+133
| | | | | | Some platforms draw directly to the screen, which means that updates will flicker if we draw multiple layers. Prevent this by first composing the update on a hidden surface.
* Abstract platform rendering to "surfaces"Pierre Ossman2017-02-1014-560/+695
| | | | This will allow us to render more things than just the framebuffer.
* Handle scrolling manuallyPierre Ossman2017-02-102-56/+146
| | | | | Stop fighting with the FLTK scroll widget and handle layout ourselves. This opens up the possibility of doing more complex drawing as well.
* Remove support for old macOSPierre Ossman2017-02-091-176/+81
| | | | Raising the requirement to 10.5 allows us to clean up the code a bit.
* Fix for shared memory leakage.TSUKAHARA Ken2017-01-201-4/+2
|
* Do explict sync after XShmPutImage()Pierre Ossman2017-01-115-89/+5
| | | | | The complex logic waiting for events didn't result in any added performance, so use the simpler approach.
* Improve graphics performance on macOSPierre Ossman2017-01-042-35/+40
| | | | | Use the APIs the way Apple wants us to, in order to avoid slow fallback code paths in Quartz.
* Remove unused declarations from Viewport.hPierre Ossman2017-01-031-4/+0
|
* Avoid translating simple error exceptionsPierre Ossman2017-01-033-10/+10
| | | | | These are very rare and very low level. Might as well just print the offending call to keep things easily maintained.
* More robust event and close handlingPierre Ossman2017-01-031-5/+9
| | | | | | There were still some circumstances where we could get stuck reading data and not respect close events properly. Move that logic to a more central place in order to make it more reliable.
* Respect SendClipboard settingPierre Ossman2017-01-021-0/+3
|
* Disable checkboxes for primary selection when relevantPierre Ossman2017-01-022-1/+21
|
* Documents $HOME/.vnc/default.tigervnc formatJeff Blaine2016-05-231-1/+4
| | | Fixes #270
* Don't reference Xregion unless used directlyPierre Ossman2016-05-131-1/+1
|
* Properly reference ShmCompletion event indexPierre Ossman2016-05-041-1/+1
|
* Be more paranoid about ShmCompletion eventsPierre Ossman2016-05-042-1/+12
| | | | | | | Unfortunately HP ships a buggy X server on their thin clients that send out extra, bogus ShmCompletion events. This screws up our logic so we need to filter them out. Fortunately they are sent with an invalid drawable id, so simply verify that.
* Don't mention cut buffersPierre Ossman2016-03-293-4/+4
| | | | | We haven't supported them in a long time so we shouldn't mention them in the interface and documentation.
* Add option to set primary selection for cut textPierre Ossman2016-03-296-1/+28
| | | | | | Previously the incoming clipboard was unconditionally set to both the PRIMARY and CLIPBOARD selection. This isn't always what the user want, so make it configurable.
* change the Copyright year on Top README.TXT and vncviewer.cxxBojan Memetovic2016-03-211-1/+1
|
* change the Copyright yearBojan Memetovic2016-03-181-1/+1
|
* Install viewer .desktop file and icons on all Unix systemsPierre Ossman2016-01-112-0/+17
| | | | | These files are not Red Hat or Ubuntu specific, so install them on all Unix systems where the viewer is installed.
* Only show sendPrimary on X11 platformsPierre Ossman2015-12-115-0/+16
| | | | | Primary selection is inherently a X11 concept so there is no point showing the settings related to it on other platforms.
* Throttle overlapping screen updatesPierre Ossman2015-11-275-4/+85
| | | | | We need to make sure the display server has finished reading our previous update before we overwrite the buffer with the next update.
* Consolidate how to run the FLTK loop in one placePierre Ossman2015-11-273-19/+18
|
* Protect PlatformPixelBuffer from simultaneous accessPierre Ossman2015-11-272-0/+7
| | | | | The damage tracking region needs to be protected from multiple threads accessing it at once. The rest should be fine though.
* Let CConnection intercept more callbacksPierre Ossman2015-11-271-0/+4
| | | | | We need more callbacks for correct operation of multi-threaded rect decoding.
* Delegate decoder object management to a separate classPierre Ossman2015-11-276-87/+10
| | | | | | | | | Done in preparation for multi-core decoding. Keeps the complexity out of the other classes. This also moves ownership of the framebuffer in to CConnection. It's the CConnection object that is aware of the threads and how to synchronise with them. Therefore the ownership of the framebuffer must also be there to make sure it isn't deleted whilst threads are working.
* Clean out unused dependencies from CConnection.hPierre Ossman2015-11-091-0/+2
|
* Return TcpListener pointers rather than objectsPierre Ossman2015-09-291-6/+10
| | | | | | It is easier to control object life time and avoid magical socket duplication by having a single TcpListener object to pass around. We have to be more careful about deleting the object though.
* Give context for strings used in menusPierre Ossman2015-09-232-24/+29
| | | | | Makes it easier to see which hot-keys might conflict with each other, and allow some variation in translation in the future.
* Add support for pgettext()Pierre Ossman2015-09-231-0/+9
| | | | | Primarily gives it a shorthand, but also make gcc tolerate its use for format strings.
* Remove duplicate gettext_noop() definitionPierre Ossman2015-09-231-1/+0
| | | | It's defined in gettext.h so no need for us to duplicate the work.
* Update gettext.h to a more current versionPierre Ossman2015-09-231-30/+46
|
* Terminate the viewer even when waiting for dataPierre Ossman2015-09-233-1/+13
| | | | | It should be possible to exit the viewer even if the network has stalled in the middle of a transfer.