summaryrefslogtreecommitdiff
path: root/indra/llwindow/llwindowwin32.cpp
AgeCommit message (Collapse)Author
2022-10-13SL-18190 Potential fix for sapping CPU when "sleeping"Dave Parks
2022-10-06SL-18190 Water shader WIP. Better parallax correction for sphere probes. ↵Dave Parks
Reduce probe memory footprint. Remove framebuffer copies and move to deprecate stencil buffer usage.
2022-08-30Merge remote-tracking branch 'remotes/origin/DRTVWR-563' into DRTVWR-559Dave Parks
2022-08-26Merge branch 'DRTVWR-563' of bitbucket.org:lindenlab/viewer into DRTVWR-563Dave Parks
2022-08-26SL-17997 Follow up from beta breakers results.Dave Parks
2022-08-18SL-17005: Clean up debug codeCosmic Linden
2022-08-16SL-17719 Windows support for absolute mouse positioning #2Andrey Kleshchev
Better touch screen handling
2022-08-14SL-17719 Windows support for absolute mouse positioningAndrey Kleshchev
For virtual machines and touch screens Also raw input is not subjected to mouse speed
2022-08-11SL-17005: (WIP) (Debug) Add logging and debug settings to assist in ↵Cosmic Linden
understanding Windows 8 failure modes. Most of this should be removed later
2022-08-09SL-17005: (WIP) (DEBUG) Add logging for graphics adaptersCosmic Linden
2022-08-09SL-17005: Fix crash in initDX when no factoryCosmic Linden
2022-06-29Merge branch 'master' (DRTVWR-543) into DRTVWR-559Andrey Kleshchev
# Conflicts: # autobuild.xml # indra/llrender/llgl.cpp # indra/newview/CMakeLists.txt # indra/newview/llvovolume.cpp
2022-06-29Merge branch 'master' into DRTVWR-539Mnikolenko Productengine
2022-06-29Merge branch 'master' into DRTVWR-548-maint-NAndrey Lihatskiy
# Conflicts: # doc/contributions.txt # indra/newview/llviewercontrol.cpp
2022-06-08SL-17005 Tweak target VRAM usage and add some log spam to help zero in on ↵Dave Parks
good targets.
2022-06-08SL-17541 Show the message that user is currently at maximum FPSMnikolenko Productengine
2022-06-03SL-17515 FIXED Extreme Mouse Sensitivity for Certain ActionsMnikolenko Productengine
2022-05-30SL-17474 Device context not properly released at shutdownAndrey Kleshchev
2022-05-20SL-17287 Instrument and optimize cubemap render. Fix for cubemap snapshots ↵Dave Parks
doing a full resolution render instead of a 512x512 render.
2022-05-20SL-17287 Update Tracy to 0.8.1. Clean up GPU instrumentation.Dave Parks
2022-05-18SL-17219: Merge 'DRTVWR-546' of lindenlab/viewer into SL-17219Nat Goodspeed
Update task branch from main project branch.
2022-04-29SL-17124 make sure window thread wakes up to proces 'quit' messageAndrey Kleshchev
2022-04-29SL-17124 switchContext and loadShaderFile crashesAndrey Kleshchev
- 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-18Merge branch master (D540) into DRTVWR-546Andrey Kleshchev
# Conflicts: # indra/llcommon/llsdutil.cpp # indra/newview/VIEWER_VERSION.txt # indra/newview/lldrawpoolalpha.cpp # indra/newview/lldrawpoolwater.cpp
2022-03-29Merge remote-tracking branch 'remotes/origin/DRTVWR-546' into SL-17005Dave Parks
2022-03-29SL-17005 WIP - Use D3D/DXGI to query for available VRAM on WindowsDave Parks
2022-03-29SL-17074 fix ALT-F4 handling without impacting alt-zoomDave Houlton
2022-03-24SL-17074 Fix Alt-F4 handling bugDave Houlton
2022-03-01Merge branch 'master' (DRTVWR-557) into DRTVWR-546Andrey Kleshchev
# 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-02-28Merge branch 'master' into DRTVWR-540-maintAndrey Lihatskiy
# Conflicts: # autobuild.xml # indra/llcommon/llsys.cpp # indra/newview/app_settings/key_bindings.xml # indra/newview/llfloatereditextdaycycle.cpp
2022-02-17SL-16815 Remove frame stalls from occlusion queries, bumpmap updates, and ↵Dave Parks
querying for available video memory.
2022-01-14SL-16606: Add profiler category WIN32Ptolemy
2021-12-17SL-16454 FIXED Performance viewer login screen is blackMnikolenko Productengine
2021-12-13SL-16467 FIXED "Keyboard layout" is not switchedMnikolenko Productengine
2021-12-09SL-16480 Followup -- fix for unintialized mRect/mClientRect and bad ↵Runitai Linden
getClientRectInScreenSpace
2021-12-09SL-16480 Fix for window not saving its position on exit.Runitai Linden
2021-11-30SL-16386 remove references to (const true) LLGLSLShader::sNoFixedFunctionDave Houlton
2021-11-24DRTVWR-546, SL-16220, SL-16094: Undo previous glthread branch revert.Nat Goodspeed
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 029b41c0419e975bbb28454538b46dc69ce5d2ba.
2021-11-23SL-16094, SL-16400: Merge branch 'DRTVWR-546' into glthreadNat Goodspeed
2021-11-23SL-16400: Address a couple shutdown crashes.Nat Goodspeed
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-23SL-16400: Add ThreadPool::start() method, and call it.Nat Goodspeed
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-23Merge branch 'glthread' of ssh://bitbucket.org/lindenlab/viewer into glthreadxNat Goodspeed
2021-11-23SL-16094: Fix second startup hang.Nat Goodspeed
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-22SL-16094 More profile hooks for threading code, remove redundant ↵Runitai Linden
wglCreateContextAttribs call
2021-11-20SL-16289 Rigged mesh rendering overhaulDave Parks
2021-11-15SL-16094: In LLWindowWin32::recreateWindow(), kick window threadNat Goodspeed
before blocking on the pending future. Otherwise the window thread can remain blocked in a GetMessage() call and deadlock the app.
2021-11-15Revert "SL-16220: Merge branch 'origin/DRTVWR-546' into glthread"Dave Houlton
This reverts commit 5188a26a8521251dda07ac0140bb129f28417e49, reversing changes made to 819088563e13f1d75e048311fbaf0df4a79b7e19.
2021-11-10Merge branch 'DRTVWR-546' into glthreadNat Goodspeed
2021-11-10SL-16094: Statically link to Windows IMM32.LIB.Nat Goodspeed
llwindowwin32.cpp's LLWinImm class used to dynamically load IMM32.DLL and populate its methods using GetProcAddress(). That was to support Windows XP. Since we've dropped Windows XP, use static linking instead, with dramatically fewer lines of code (and less of a thread safety alarm trigger). We retain the LLWinImm wrapper class only as a hook for Tracy instrumentation.
2021-11-09SL-16330 Clean up vertical sync handling, add to UIMnikolenko Productengine