Commit Graph

415 Commits (3079cda4868fb736d20cd07698a164b109704d47)

Author SHA1 Message Date
Ansariel 291253d932 FIRE-32105: Application icon flashes also while viewer has focus 2023-01-27 21:30:20 +01:00
Beq 0c9d4db072 [FIRE-32453][BUG-232971] Orderly shutdown of event queues
Terminate related queues before the windows thread to avoid loops. 
Also increase timeout on queue full wait as we don't expect to see this so often now.
2023-01-03 18:50:24 +00:00
Beq 6c4ba94b25 [FIRE-32453][BUG-232971] Further edge cases for thread hangs on exit 2023-01-03 10:02:01 +00:00
Beq e1479bd185 [FIRE-32453][BUG-232971] Improve shutdown behaviour. (Ty Rick Daylight)
Alter close down behaviour to ensure that the main UI window remains open until the process finishes persisting data and other close down activities.
2022-12-21 02:07:58 +00:00
Beq 92656117ba Sundry additional debugs to help trace hang on exit in windows 2022-12-17 16:39:35 +00:00
Ansariel a6ce12ab2b Merge branch 'DRTVWR-565-maint-P' of https://bitbucket.org/lindenlab/viewer 2022-11-11 13:27:28 +01:00
Mnikolenko Productengine a53ccb2379 SL-18136 fix for Japanese IME 2022-11-02 19:38:01 +02:00
Andrey Lihatskiy 97b676b60f Merge branch 'master' into DRTVWR-565-maint-P 2022-10-20 21:43:54 +03:00
Ansariel e9e62b798d Merge branch 'DRTVWR-565-maint-P' of https://bitbucket.org/lindenlab/viewer 2022-08-17 19:31:17 +02:00
Andrey Kleshchev aa5c4d45aa SL-17719 Windows support for absolute mouse positioning #2
Better touch screen handling
2022-08-16 00:09:50 +03:00
Andrey Kleshchev ff895e96b2 SL-17719 Windows support for absolute mouse positioning
For virtual machines and touch screens
Also raw input is not subjected to mouse speed
2022-08-14 21:14:39 +03:00
Andrey Lihatskiy 2e837e5389 Merge branch 'master' into DRTVWR-548-maint-N
# Conflicts:
#	doc/contributions.txt
#	indra/newview/llviewercontrol.cpp
2022-06-29 20:51:08 +03:00
Ansariel 3a4a0bd3d2 Merge branch 'master' of https://bitbucket.org/lindenlab/viewer 2022-06-29 17:25:32 +02:00
Mnikolenko Productengine ff65e23f20 SL-17515 FIXED Extreme Mouse Sensitivity for Certain Actions 2022-06-03 14:08:04 +03:00
Ansariel e60b6e45e4 Manually apply fix for SL-17474 Device context not properly released at shutdown 2022-05-30 19:19:32 +02:00
Andrey Kleshchev ce0286c33b SL-17474 Device context not properly released at shutdown 2022-05-30 15:02:03 +03:00
Ansariel 410704b5c6 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2022-05-03 11:37:50 +02:00
Andrey Kleshchev da6f4204b7 SL-17124 make sure window thread wakes up to proces 'quit' message 2022-04-29 22:18:20 +03:00
Andrey Kleshchev 904b16a0a7 SL-17124 switchContext and loadShaderFile crashes
- Do not try initializing shaders if requirements are not met or if window does not exist
- Warn user before closing window. Situation is unexpected, there is chance of more issues, like a freeze or a crash on close()
- mHasMultitexture is a solid requirement, if it is not present, we won't be able to run
2022-04-29 19:41:22 +03:00
Ansariel a775b9fc7f Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2022-04-19 15:49:47 +02:00
Ansariel b8b0c8ec3b Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2022-04-19 15:42:14 +02:00
Andrey Kleshchev ce4c694b66 Merge branch master (D540) into DRTVWR-546
# Conflicts:
#	indra/llcommon/llsdutil.cpp
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/lldrawpoolalpha.cpp
#	indra/newview/lldrawpoolwater.cpp
2022-04-18 23:42:39 +03:00
Dave Houlton e76a3b12e6 SL-17074 fix ALT-F4 handling without impacting alt-zoom 2022-03-29 11:36:28 -06:00
Dave Houlton 578087b7bd SL-17074 Fix Alt-F4 handling bug 2022-03-24 11:21:25 -06:00
Ansariel ef88337eef Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
# Conflicts:
#	autobuild.xml
#	doc/contributions.txt
#	indra/llcommon/tests/llprocess_test.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/llfloatermodelpreview.cpp
#	indra/newview/llmodelpreview.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llvovolume.cpp
#	indra/newview/viewer_manifest.py
2022-03-02 10:12:19 +01:00
Andrey Kleshchev 97a103255e Merge branch 'master' (DRTVWR-557) into DRTVWR-546
# Conflicts:
#	autobuild.xml
#	doc/contributions.txt
#	indra/cmake/GLOD.cmake
#	indra/llcommon/tests/llprocess_test.cpp
#	indra/newview/VIEWER_VERSION.txt
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/llfloatermodelpreview.cpp
#	indra/newview/llmodelpreview.cpp
#	indra/newview/llviewertexturelist.cpp
#	indra/newview/llvovolume.cpp
#	indra/newview/viewer_manifest.py
2022-03-01 13:41:42 +02:00
Ansariel 25f974d77d Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm 2022-03-01 10:00:36 +01:00
Andrey Lihatskiy 73eec89131 Merge branch 'master' into DRTVWR-540-maint
# Conflicts:
#	autobuild.xml
#	indra/llcommon/llsys.cpp
#	indra/newview/app_settings/key_bindings.xml
#	indra/newview/llfloatereditextdaycycle.cpp
2022-02-28 21:54:21 +02:00
Ansariel 8c2deb6f8d Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llrender/llimagegl.cpp
#	indra/newview/llagentcamera.cpp
#	indra/newview/llagentcamera.h
#	indra/newview/lltracker.cpp
#	indra/newview/llviewertexture.cpp
#	indra/newview/llvoavatar.cpp
#	indra/newview/llvoavatar.h
2022-02-22 14:52:56 +01:00
Dave Parks 0d6aa3c0fe SL-16815 Remove frame stalls from occlusion queries, bumpmap updates, and querying for available video memory. 2022-02-17 22:52:23 +00:00
Ansariel 0a0e2fe93e Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2022-01-15 02:39:07 +01:00
Ptolemy 8c823b75c0 SL-16606: Add profiler category WIN32 2022-01-14 11:50:22 -08:00
Ansariel 265bca5d63 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2022-01-13 21:18:22 +01:00
Mnikolenko Productengine 3ac21ebbf6 SL-16454 FIXED Performance viewer login screen is black 2021-12-17 13:07:23 +02:00
Ansariel d06070241a Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	autobuild.xml
#	indra/cmake/00-Common.cmake
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewer.cpp
#	indra/newview/lldrawpoolavatar.cpp
#	indra/newview/llvovolume.cpp
2021-12-16 10:09:12 +01:00
Ansariel 47e2173239 Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llrender/llgl.cpp
#	indra/llwindow/llwindowwin32.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/featuretable.txt
#	indra/newview/featuretable_mac.txt
#	indra/newview/lldrawpoolalpha.cpp
#	indra/newview/lldynamictexture.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/pipeline.cpp
#	indra/newview/pipeline.h
2021-12-16 08:42:54 +01:00
Mnikolenko Productengine c21dad8207 SL-16467 FIXED "Keyboard layout" is not switched 2021-12-13 12:14:14 +02:00
Runitai Linden 7683477547 SL-16480 Followup -- fix for unintialized mRect/mClientRect and bad getClientRectInScreenSpace 2021-12-09 16:44:44 -06:00
Runitai Linden 9689e606f4 SL-16480 Fix for window not saving its position on exit. 2021-12-09 14:01:41 -06:00
Ansariel 028941652b Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer
# Conflicts:
#	indra/llrender/llvertexbuffer.cpp
#	indra/newview/app_settings/settings.xml
#	indra/newview/llappviewer.cpp
#	indra/newview/llappviewer.h
#	indra/newview/llfloaterpreference.cpp
#	indra/newview/llnetmap.cpp
#	indra/newview/llspatialpartition.cpp
#	indra/newview/llviewerdisplay.cpp
#	indra/newview/llviewershadermgr.cpp
#	indra/newview/pipeline.cpp
2021-12-01 22:29:25 +01:00
Dave Houlton 68e09edad0 SL-16386 remove references to (const true) LLGLSLShader::sNoFixedFunction 2021-11-30 17:04:35 -07:00
Ansariel 4a1ef323ae Merge branch 'DRTVWR-546' of https://bitbucket.org/lindenlab/viewer 2021-11-29 19:40:28 +01:00
Nat Goodspeed 0b066539fe DRTVWR-546, SL-16220, SL-16094: Undo previous glthread branch revert.
Reverting a merge is sticky: it tells git you never want to see that branch
again. Merging the DRTVWR-546 branch, which contained the revert, into the
glthread branch undid much of the development work on that branch. To restore
it we must revert the revert.

This reverts commit 029b41c041.
2021-11-24 10:47:54 -05:00
Nat Goodspeed d71e0a6d47 SL-16094, SL-16400: Merge branch 'DRTVWR-546' into glthread 2021-11-23 21:23:45 -05:00
Nat Goodspeed 67ace0df99 SL-16400: Address a couple shutdown crashes.
It can happen that we try to post() work for LLWindowWin32's window thread
after the thread's WorkQueue has been closed.

Also, instead of giving the "General" ThreadPool static lifespan, put it on
the heap, anchored with a static unique_ptr.
2021-11-23 20:48:44 -05:00
Nat Goodspeed 2b96f89c2a SL-16400: Add ThreadPool::start() method, and call it.
It's sometimes important to finish other initialization before launching the
threads in the ThreadPool, so make that an explicit step. In particular, we
were launching the LLImageGL texture thread before initializing the GL
context, resulting in all gray textures.
2021-11-23 20:39:32 -05:00
Nat Goodspeed 6d36038e40 Merge branch 'glthread' of ssh://bitbucket.org/lindenlab/viewer into glthreadx 2021-11-23 15:41:46 -05:00
Nat Goodspeed 37900e593d SL-16094: Fix second startup hang.
Add LLWindowWin32Thread::Post(), like post() except it uses PostMessage() to
send the work item to the window thread. Support this in mainWindowProc().

Move LLWindowWin32::recreateWindow()'s destroy_window_handler() call onto the
window thread. Delaying destruction of the old HWND ensures that we can use
PostMessage() and GetMessage() with that HWND to pass the lambda work item.
Moreover, it's likely to be less buggy to call DestroyWindow() on the same
thread that created the window.

Make recreateWindow()'s window thread lambda bind the window class parameters
by value, rather than binding 'this' and back-referencing LLWindowWin32
members.

Make recreateWindow() construct the window thread lambda and then decide
whether to pass it to the window thread using post() or Post(), depending on
whether we have a current HWND -- therefore whether the window thread is
blocked on GetMessage(). That means we can eliminate the kickWindowThread()
call.

Make destroy_window_handler() accept HWND by value rather than by non-const
reference. Since it doesn't attempt to modify the caller's value, this is a
better match for the function's semantics anyway -- but importantly, it lets
us pass a const HWND.
2021-11-23 15:40:36 -05:00
Runitai Linden 9b0d8c7e62 SL-16094 More profile hooks for threading code, remove redundant wglCreateContextAttribs call 2021-11-22 18:42:56 -06:00
Dave Parks 28f9fb06a9 SL-16289 Rigged mesh rendering overhaul 2021-11-20 18:49:19 +00:00