Commit Graph

519 Commits (8a13530ce4eeb481ee467fd3ec54f1ed7e9f632a)

Author SHA1 Message Date
Graham Linden graham@lindenlab.com 06bce2ddd0 Add debug setting and code to allow nVidia nSight graphics debugging to capture SL frames.
These changes are only enabled if RenderNsightDebugSupport is true and eliminate use of
some OpenGL legacy functionality which is incompatible with nSight capture
(mostly glReadPixels and other fixed-function pipe rendering calls).
2018-02-15 21:55:24 +00:00
andreykproductengine 3b73cec39e Build fix for non-dpi aware environment 2018-01-19 19:42:57 +02:00
andreykproductengine af3bf74eea MAINT-8183 Additional logging 2018-01-17 18:46:56 +02:00
AndreyL ProductEngine 57a99273ed Merged in lindenlab/viewer-release 2018-01-17 03:20:12 +02:00
Ansariel f1c76a376c STORM-2151: Respect "Hide cursor while typing" user setting on Windows 2017-10-16 10:41:45 +02:00
Oz Linden 01e0b78c59 merge changes for DRTVWR-439 2017-08-16 15:43:58 -04:00
Nat Goodspeed fe64db61d6 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-05-22 21:30:26 -04:00
Nat Goodspeed a4467e9ffe Automated merge with ssh://bitbucket.org/lindenlab/viewer64-c-11 2017-05-04 17:16:12 -04:00
mnikolenko c27dbc6214 MAINT-6404 FIXED When pasting text with mac linebreak into a notecard, it shouldn't be removed 2017-04-03 02:21:18 +03:00
Callum Prentice 6d4c737b78 Additional work on : Fix for MAINT-7054 Viewer Crashed when I used Japanese IM. (Drake and Appurist convinced me my initial solution was non-optimal) 2017-03-27 16:20:51 -07:00
Callum Prentice 09003cf405 Fix for MAINT-7054 Viewer Crashed when I used Japanese IM. 2017-03-27 10:59:19 -07:00
callum@lindenlab.com 398c351371 First pass at osx/macos keyboard events - simple case like google homepage is working 2017-03-03 15:32:47 -08:00
Nat Goodspeed ae0b3149ba DRTVWR-418: Fix a round of compile errors surfaced by -std=c++11.
These are mostly things that were in fact erroneous, but accepted by older
compilers.

This changeset has not yet been built with Visual Studio 2013 or Linux gcc,
even with -std=c++11.

This changeset has not been built *without* -std=c++11. It should be used in
conjunction with a corresponding change to LL_BUILD_DARWIN_BASE_SWITCHES in
viewer-build-variables/variables.

This is a work in progress. We do not assert that this changeset completes the
work needed to turn on -std=c++11, even on the Mac.
2017-02-23 16:49:49 -05:00
Nat Goodspeed 434f0e161a Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-02-03 09:54:52 -05:00
username = daianakproductengine c9f9e93889 MAINT-2060 Fixed Double Freeze when clicking on Help>About Second Life 2017-05-19 20:28:59 +03:00
Ansariel 7d8bfcfb74 Don't resize viewer window if UI scaling didn't change 2016-11-25 17:28:48 +01:00
Ansariel Hiller 76b3efe01c MAINT-6953 [Contribution] Error in DPI scaling calculation 2016-11-19 11:19:01 +00:00
Nat Goodspeed 934b94e74a DRTVWR-418: pull in new viewer-release via viewer64 2016-11-16 10:56:05 -05:00
AndreyL ProductEngine 4617e07b37 Merged in lindenlab/viewer-release 2016-10-10 23:26:58 +03:00
Ansariel bb7cbe7cff Small improvements to UI DPI scaling on Windows:
* Use USER_DEFAULT_SCREEN_DPI define from WinUser.h
* Change Win32 SDK target version to Windows Vista or greater
* Define WM_DPICHANGED as preprocessor definition as in WinUser.h
* Cull manual definitions of WM_MOUSEWHEEL and WHEEL_DELTA which are part of the Win32 SDK since Windows NT 4.0
2016-09-20 21:16:39 +02:00
AndreyL ProductEngine ea4b5e60d9 Fixed line endings in llwindowwin32.cpp 2016-08-20 14:28:03 +03:00
pavelkproductengine cf93c1c81d MAINT-5992 Second Life unusable on Windows 10 with 4k monitor SL forcibly overrides DPI compatibility option 2016-08-18 19:43:48 +03:00
pavelkproductengine 070116f212 MAINT-6493 SL Viewer does not respect the Windows 10 display setting size slider 2016-07-13 20:28:29 +03:00
Nat Goodspeed 464a0df4c1 DRTVWR-418: Unify control flow through LLAppViewer across platforms.
The LLApp API used to consist of init(), mainLoop(), cleanup() methods. This
makes sense -- but on Mac that structure was being subverted. The method
called mainLoop() was in fact being called once per frame. There was
initialization code in the method, which (on Mac) needed to be skipped with an
already-initialized bool. There was a 'while' loop which (on Mac) needed to be
turned into an 'if' instead so the method would return after every frame.

Rename LLApp::mainLoop() to frame(). Propagate through subclasses LLAppViewer
and LLCrashLogger. Document the fact that frame() returns true to mean "done."
(This was always the case, but had to be inferred from the code.)

Rename the Mac Objective-C function mainLoop to oneFrame. Rename the C++ free
function it calls from runMainLoop() to pumpMainLoop(). Add comments to
llappdelegate-objc.mm explaining (inferred) control flow.

Change the Linux viewer main() and the Windows viewer WINMAIN() from a single
LLAppViewer::mainLoop() call to repeatedly call frame() until it returns true.

Move initialization code from the top of LLAppViewer::frame() to the init()
method, where it more properly belongs. Remove corresponding
mMainLoopInitialized flag (and all references) from LLAppViewer.

Remove 'while (! LLApp::isExiting())' (or on Mac, 'if (! LLApp::isExiting())')
from LLAppViewer::frame() -- thus unindenting the whole body of the 'while'
and causing many lines of apparent change. (Apologies to reviewers.)

There are four LLApp states: APP_STATUS_RUNNING, APP_STATUS_QUITTING,
APP_STATUS_STOPPED and APP_STATUS_ERROR. Change LLAppViewer::frame() return
value from (isExiting()) (QUITTING or ERROR) to (! isRunning()). I do not know
under what circumstances the state might transition to STOPPED during a
frame() call, but I'm quite sure that if it does, we don't want to call
frame() again. We only want a subsequent call if the state is RUNNING.

Also rename mainLoop() method in LLCrashLogger subclasses
LLCrashLoggerWindows, LLCrashLoggerMac, LLCrashLoggerLinux. Of course it's
completely up to the frame() method whether to yield control; none of those in
fact do. Honor protocol by returning true (frame() is done), even though each
one's main() caller ignores the return value.

In fact LLCrashLoggerWindows::mainLoop() wasn't using the return protocol
correctly anyway, returning wParam or 0 or 1 -- possibly because the return
protocol was never explicitly documented. It should always return true: "I'm
done, don't call me again."
2016-06-30 16:51:50 -04:00
Oz Linden 950c41d184 merge 4.0.4-release and MAINT-5974 2016-05-06 10:28:42 -04:00
Nicky 30dcad4b95 Windows: 1. GWL_USERDATA must be GWLP_USERDATA to be compatible with x86 and x64. (GWL_USERDATA is deprecated anyway). 3. Replace Get/SetWindowLong with Get/SetWindoeLongPtr or placing this into GWLP_USERDATA will truncate the pointer.
(transplanted from 5f50745bff03700d3862a6bb1eb5936be0fdc6cd)
2016-04-22 14:55:19 +02:00
AndreyL ProductEngine 56f736b654 Merged in cinderblocks/storm-2127 2016-04-21 22:48:32 +03:00
Cinder c2c0c537bb STORM-2127 - Fix NSException when assigning values that don't exist in cocoa modifier key event. 2016-04-20 16:13:17 -06:00
Mnikolenko ProductEngine c7e2c496ab MAINT-6294 FIXED Cursor became invisible after typing in any input field (OS X) 2016-04-07 11:28:37 +03:00
Mnikolenko ProductEngine 272d40a089 MAINT-6239 [Mac] Computer cursor appears attached to crosshair after using modifier keys in mouselook 2016-03-29 13:30:00 +03:00
Mnikolenko ProductEngine ca1d7da571 MAINT-3171 Alt-clicking while moving mouse can move the camera significantly 2016-03-21 17:58:39 +02:00
Mnikolenko ProductEngine 9ed050e0e0 MAINT-3171 WIP Alt-clicking while moving mouse can move the camera significantly 2016-03-10 14:31:16 +02:00
Oz Linden bc22e58743 merge changes for 4.0.1-release 2016-01-15 16:55:04 -05:00
rider eb484d5051 MAINT-5909: Enable unicode text input on mac and feed that directly into the viewer. Windows fixes still required. 2015-12-03 13:32:06 -08:00
rider c2ad041c23 Encode keyboard event for reconstruction in the plugin. 2015-11-13 16:22:34 -08:00
Oz Linden c8726aba30 remove execute permission from many files that should not have it 2015-11-10 09:48:56 -05:00
rider 5449ae73b3 MAINT-5754: Finish key modifier experiment. Still not working. 2015-11-07 12:09:08 -08:00
rider bd817f6f42 MAINT-5754: Basic keyboard functionality on the Mac. Still incomplete 2015-11-06 14:12:30 -08:00
Rider Linden 9833a50260 MAINT-5754: For MoaP and MediaCtrls forward all events including KEYUP and KEYDOWN to the CEF plugin. 2015-10-27 15:17:12 -07:00
callum_linden 6599e10d00 Merge with tip of viewer-release 2015-10-20 16:39:00 -07:00
pavelkproductengine 3732e0b4d2 merge changes for MAINT-4734 2015-10-13 20:20:09 +03:00
callum_linden 6765d66637 Merge with viewer-xcode-7 for Xcode 7 patches 2015-09-29 13:35:41 -07:00
callum_linden 17ff449ae6 Supress error after Xcode 7 update: error: null passed to a callee that requires a non-null argument 2015-09-18 15:07:27 -07:00
callum_linden 1db2c7276d Merge with viewer-release 2015-08-31 11:17:28 -07:00
callum_linden 83a9ae7b3c New keyboard code for windows that uses system messages directly and works ok. Points to new LLCEFLib 2015-07-15 02:27:33 +01:00
AndreyL ProductEngine 078612e292 MAINT-5019 FIXED Additional cases 2015-07-14 04:39:20 +03:00
Mnikolenko ProductEngine 89321a56fd increment viewer version to 3.7.29 2015-04-28 12:03:31 +03:00
pavelk_productengine e92e72ff3a MAINT-5106 FIXED [MAC] if SL viewer is not running, clicking on SLURL launches viewer, BUT start location is not set 2015-04-24 23:24:44 +03:00
Mnikolenko ProductEngine bb87365c37 Merge viewer-release, become version 3.7.29 2015-04-28 13:36:35 +03:00
Oz Linden a8ef252571 merge changes for 3.7.27-release 2015-04-13 16:23:36 -04:00