summaryrefslogtreecommitdiff
path: root/indra/llwindow
AgeCommit message (Collapse)Author
2021-11-20SL-16289 Rigged mesh rendering overhaulDave Parks
2021-11-19SL-15333 Crash in glh_init_extensionsAndrey Kleshchev
2021-11-19Merge branch 'master' into DRTVWR-540-maintAndrey Lihatskiy
# Conflicts: # indra/newview/llfloatereditextdaycycle.cpp # indra/newview/llviewerinput.cpp
2021-11-19Merge branch 'master' into DRTVWR-543-maintAndrey Lihatskiy
# Conflicts: # indra/newview/llagentwearables.cpp # indra/newview/llvoicevivox.cpp
2021-11-17SL-16330 Allow vsync update without restart on macMnikolenko ProductEngine
2021-11-16DRTVWR-546 merge in master v6.5.1Dave Houlton
2021-11-16Merge branch 'master' into DRTVWR-519Andrey Lihatskiy
# Conflicts: # README.md
2021-11-16Merge branch 'master' into DRTVWR-530-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt
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-12SL-16220: Merge branch 'origin/DRTVWR-546' into glthreadNat Goodspeed
2021-11-12SL-15333 Crash in glh_init_extensionsAndrey Kleshchev
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
2021-11-08SL-16094: Zap thread safety land mine; thin PostMessage() calls.Nat Goodspeed
LLWindowWin32::mWndProc was a public WNDPROC member. If set non-NULL, mainWindowProc() would call that before falling into its own handler code. But now, mWndProc would be called on the window thread instead of on the main thread. Running arbitrary callback code on the window thread could cause all sorts of problems. It could be made safe by posting the callback call to the "mainloop" WorkQueue for execution on the main thread. But as no code actually references it, delete it instead. Per DaveP, the recent change to LLWindowsWin32Thread::post() could end up calling PostMessage() many times per frame, with nontrivial overhead. Reinstate the more selective code that calls PostMessage() with the dummy message (to bust us out of GetMessage() to check pending window-thread work requests) at most once per frame.
2021-11-05SL-16094: Use ThreadPool for LLWindowWin32Thread.Nat Goodspeed
Move the whole LLWindowWin32Thread class inside LLWindowWin32, and make it a struct. Migrate the struct declaration to llwindowwin32.cpp. Derive it from ThreadPool, which provides the WorkQueue. Use runPending() instead of manually popping and running individual queue items. Make its post() operation always PostMessage(bogus) whenever we put an entry in the WorkQueue, so we won't remain blocked in GetMessage(). Instead of storing a back pointer to the LLWindowWin32 instance, store the relevant HWND and HDC in LLWindowWin32Thread itself to avoid cross-thread timing problems. Extract both instances of a large duplicated block of LLWindowWin32 code to a new recreateWindow() method, and call it in those places. Per the TODO, use a std::future to pass the new HWND and HDC back to LLWindowWin32 -- but also store them locally on the LLWindowWin32Thread instance.
2021-11-05SL-16288 FIXED Dragging a file across the viewer cancels the drag and ↵Mnikolenko Productengine
freezes the File Explorer
2021-10-29SL-14664 Fix missed pixmap initAndrey Kleshchev
2021-10-28SL-9436 Don't render 100% transparent objects.Dave Parks
2021-10-25Merged DRTVWR-546 into SL-15999Vir Linden
2021-10-22mergeBrad Payne (Vir Linden)
2021-10-22SL-16203 Fix for wonky handling of mouse deltas.Dave Parks
2021-10-14SL-16131 Fix for alignment warnings on Win32 builds.Dave Parks
2021-10-11SL-16099 Multi-threaded OpenGL usage on Windows, enable Core Profile and ↵Dave Parks
VAOs by default.
2021-10-01SL-16094 Move LLWindowWin32::mainWindowProc and Windows message handling to ↵Dave Parks
a background thread to prevent frame stalls in LLWindowWin32::gatherInput
2021-09-28SL-16102 Set window title to agent name (child of SL-15999 Support for low ↵Callum Linden
overhead, non interactive viewer sessions)
2021-09-22Merge remote-tracking branch 'remotes/origin/DRTVWR-541' into DRTVWR-546Runitai Linden
# Conflicts: # indra/llcommon/linden_common.h
2021-09-21SL-16027: Add Tracy OpenGL supportPtolemy
2021-09-20SL-16043 Fix DisableVerticalSync, default DisableVerticalSync to off, remove ↵Dave Parks
broken frame limiter code (use vsync if you want to limit framerate).
2021-09-03Merge branch 'DRTVWR-522-maint' into DRTVWR-545-maint-mixAndrey Lihatskiy
# Conflicts: # indra/newview/llappviewer.cpp # indra/newview/llappviewerwin32.cpp # indra/newview/llmachineid.cpp
2021-08-20SL-7934 Driver version from wrong GPUAndrey Kleshchev
2021-06-08SL-15359 out_of_range exceptionAndrey Kleshchev
2021-06-07Merge with tip of Master after Viewer releaseCallum Prentice
2021-06-07Merge branch 'master' into DRTVWR-530-maintAndrey Lihatskiy
2021-06-07Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
2021-06-07Merge branch 'master' into DRTVWR-521-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt
2021-05-26SL-15196 Attach correct log file to Bugsplat reportMnikolenko Productengine
2021-04-30Merge branch 'master' into DRTVWR-530-maintAndrey Lihatskiy
2021-04-30Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
# Conflicts: # doc/contributions.txt
2021-04-29Clean up a merge conflictCallum Prentice
2021-04-29Merge master into DV525-merge-6.4.19Dave Houlton
2021-04-27SL-14664 Added zoomout and sizeallAndrey Kleshchev
Remade code to use getCursorFromString
2021-04-22SL-14977 Extended AltGr to cover oem symbolsAndrey Kleshchev
Typing '}' via 'altgr+=' into a script makes the viewer to derender particles
2021-04-01Merge branch 'master' into DRTVWR-519Callum Prentice
2021-04-01Merge branch 'master' into DV525-merge-6.4.18Dave Houlton
2021-04-01Merge branch 'master' into DRTVWR-522-maintAndrey Lihatskiy
# Conflicts: # indra/newview/lltoolpie.cpp
2021-04-01Merge branch 'master' into DRTVWR-515-maintAndrey Lihatskiy
2021-03-10Merge branch 'master' v6.4.17 into DRTVWR-525Dave Houlton
2021-03-09This set of changes reverts the merge with master (git revert c83e740) and ↵Callum Prentice
results in a version of the DRTVWR-519 that matches what was presemt before it was deployed as a release viewer *plus* 3 small fixes from Maxim (See commits). This branch can now be used for additional fixes before eventually being used to release D-519 as normal