summaryrefslogtreecommitdiffstats
path: root/vncviewer/DesktopWindow.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Remove parameter "hasBeenSet" logicPierre Ossman2015-04-271-3/+3
| | | | | It doesn't really make sense anymore given that settings might come from the GUI or configuration and not only the command line.
* Remove no longer functional workaroundPierre Ossman2015-02-161-9/+0
| | | | | | This workaround is no longer effective with the new system handler method of handling keyboard events. The bug has also been fixed in upstream FLTK, further making it pointless.
* Raise FLTK requirement to 1.3.3Pierre Ossman2015-01-271-53/+2
| | | | This means that we can remove a lot of conditionals and fallback code.
* More debug logging for screen layout changesPierre Ossman2015-01-261-2/+5
|
* Make sure we do an initial resizePierre Ossman2014-11-111-4/+12
| | | | | | The local window manager might give us a window of a different size than the one we request. Make sure that the remote resize setting gets respected even in this case.
* Make sure user visible strings are translatedPierre Ossman2014-09-221-3/+3
|
* Use PixelBuffer objects as the interface for encoders and decodersPierre Ossman2014-07-141-24/+3
| | | | | | | This avoid a lot of unnecessary middle men. This also pushes the responsibility for pixel format conversion into the encoders and decoders. The new bufferFromBuffer() is used for direct conversion, rather than PixelTransformer/TransImageGetter.
* Provide a better R/W base PixelBuffer classPierre Ossman2014-07-071-2/+2
| | | | | Clearly separates the read API from the write API and also from actual implementation.
* Remove full support for colour mapsPierre Ossman2014-07-071-6/+0
| | | | | | | | | Gets rid of a loooot of code and complexity. Colour map clients are still supported through an automatically generated map, but we lose the ability to develop a client or server that uses colour maps internally.
* Remove some premature optimisationPierre Ossman2014-07-071-0/+22
| | | | Reduces header dependencies.
* We need to be careful to not call X11 operations if the window isn'tPierre Ossman2012-10-301-14/+26
| | | | | | | shown yet. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5011 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Leaving/entering full screen on OS X would leave the scroll bars in anPierre Ossman2012-10-241-0/+5
| | | | | | | incorrect state. Turned out it was actually a redraw bug. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5010 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fl::screen_work_area() was added after FLTK 1.3.0, so we need to havePierre Ossman2012-10-241-0/+10
| | | | | | | checks that it is actually present on the current system. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5008 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix indentation.Pierre Ossman2012-10-171-1/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5005 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Starting in full screen was misbehaving because we were waitingPierre Ossman2012-10-171-0/+7
| | | | | | | | for a FL_FULLSCREEN event to set things up properly, and FLTK doesn't emit this for a hidden window. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5004 3789f03b-4d11-0410-bbf8-ca57d06f2519
* We need to be more careful about activating maximized mode when inPierre Ossman2012-10-111-5/+12
| | | | | | | full screen, otherwise we'll mess things up. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5003 3789f03b-4d11-0410-bbf8-ca57d06f2519
* XFCE's window manager did not interact well with the code that avoidedPierre Ossman2012-10-031-16/+25
| | | | | | | | accidental legacy full screen requests. Seems we need to sort that FIXME out sooner rather than later. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5002 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Using maximize and full screen at the same time on OS X would misbehavePierre Ossman2012-10-021-4/+21
| | | | | | | | | as we would first create a full screen window, then resize it to a maximized site. Reorganise things a bit so that we get sensible behaviour. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5001 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix bad indentation.Pierre Ossman2012-10-021-7/+7
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@5000 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Need to make sure that the viewport still gets mouse events, even if wePierre Ossman2012-09-101-1/+2
| | | | | | | want to intercept them for the edge/bump scroll. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4997 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Break some overly long lines.Pierre Ossman2012-09-031-6/+12
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4993 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Avoid triggering a full screen request by accident on X11.Pierre Ossman2012-09-031-8/+28
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4992 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Restore edge/bump scrolling when we are in full screen mode as it is easierPierre Ossman2012-09-031-1/+82
| | | | | | | to use. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4991 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Move the -geometry parsing up, so that it affects fullscreen mode asPeter Åstrand2012-08-291-45/+43
| | | | | | | | | well. This to allow specifying which monitor to use for fullscreen mode. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4981 3789f03b-4d11-0410-bbf8-ca57d06f2519
* The OS X keyboard grabbing code needs to be multi-head aware to functionPierre Ossman2012-08-271-1/+7
| | | | | | | properly. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4977 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Added a comment about -geometry limitations. Peter Åstrand2012-08-271-0/+4
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4974 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Update to last patch; forgot break in switch statement. Peter Åstrand2012-08-271-0/+2
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4973 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Added a standard -geometry command line option. Such an option isPeter Åstrand2012-08-271-1/+31
| | | | | | | | actually already documented on the man page. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4972 3789f03b-4d11-0410-bbf8-ca57d06f2519
* X11 window managers are very buggy when it comes to having a window startPierre Ossman2012-08-231-17/+60
| | | | | | | | | in full screen mode. So we'll resort to creating a normal window, and then switching to full screen once it is mapped. Unfortunately it means we need to handle delaying some resize handling. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4958 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Avoid doing a lot of resize related things if we're not actually resizing.Pierre Ossman2012-08-231-15/+24
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4957 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Added new option "-Maximize", for maximizing the window at startup.Peter Åstrand2012-08-011-0/+44
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4949 3789f03b-4d11-0410-bbf8-ca57d06f2519
* We can end up with no screens in some cases. Make sure we at least have aPierre Ossman2012-07-201-0/+5
| | | | | | | dummy one when that happens. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4947 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Screen layout is relative our viewport, not the local machine's 0,0.Pierre Ossman2012-07-201-6/+12
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4946 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make sure we filter out any screens that aren't fully inside the newPierre Ossman2012-07-201-0/+8
| | | | | | | framebuffer. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4945 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Remove some debug output that wasn't supposed to be here.Pierre Ossman2012-07-201-1/+0
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4944 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Implement client side multi-head support. Requires a FLTK patched to supportPierre Ossman2012-07-131-20/+135
| | | | | | | | fullscreen over multiple monitors. Will properly report screen configuration to the server, provided the server supports it. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4935 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make it possible to dynamically resize the size of the session, when resizingPierre Ossman2012-07-041-35/+88
| | | | | | | | the viewer window, or when entering or leaving fullscreen mode. Initial work done by Arthur Huillet and clohr. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4924 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Reindent some code that had grown a bit unstructured.Pierre Ossman2011-11-211-18/+19
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4812 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Also grab the mouse pointer in full screen as some window managers like toPierre Ossman2011-11-171-0/+11
| | | | | | | | do special things with buttons combined with modifiers. The user probably wants to propagate these to the server though. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4808 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Put the TigerVNC marker at the end instead of the beginning of the windowPierre Ossman2011-09-301-1/+1
| | | | | | | | title, making it easier to differentiate windows. At the same time remove the translation tags as there is nothing in there that should be translated. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4682 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make sure to include config.h in every compilation unit. Otherwise,Peter Åstrand2011-08-231-0/+4
| | | | | | | | | | the necessary defines will only be visible as a side effect of including other headers, leading to problems with things like translations, which will fail in various places. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4646 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Another fullscreen fix: avoid triggering fullscreen simply by settingPeter Åstrand2011-08-021-1/+9
| | | | | | | | the window size to the size of the screen. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4612 3789f03b-4d11-0410-bbf8-ca57d06f2519
* More fullscreen fixes: Do not try to change size in fullscreen modePeter Åstrand2011-08-011-5/+6
| | | | | | | | | even if viewport is same as window size. However, after exiting fullscreen mode, the window size needs to be updated. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4610 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Another fullscreen fix: When the framebuffer size changes, we must notPeter Åstrand2011-07-191-0/+3
| | | | | | | | call size_range with a limit, when running in fullscreen mode. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4600 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Make fullscreen mode work better with some X11 WMs such as Fedora 14Peter Åstrand2011-07-181-4/+21
| | | | | | | | Metacity by removing the size limits before attempting fullscreen. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4599 3789f03b-4d11-0410-bbf8-ca57d06f2519
* XGrabKeyboard needs to use CurrentTime rather thanPeter Åstrand2011-07-181-1/+1
| | | | | | | | | fl_event_time. Otherwise, the second delayed grab attempt will often fail. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4598 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Create a proper header file for the exported functions from vncviewer.cxx.Pierre Ossman2011-07-121-2/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4579 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fix build issues with Visual C++ (implemented macro version of snprintf + ↵DRC2011-06-241-3/+3
| | | | | | re-ordered headers to ensure that winsock is included ahead of windows.h) git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4527 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Implement a more robust method to handle the keyboard grab/focus voodoo asPierre Ossman2011-06-141-9/+43
| | | | | | | it didn't catch some cases on OS X. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4496 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Add support for cursors to the new viewer.Pierre Ossman2011-06-081-8/+7
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4472 3789f03b-4d11-0410-bbf8-ca57d06f2519