summaryrefslogtreecommitdiff
path: root/indra/llwindow/llwindowwin32.cpp
AgeCommit message (Collapse)Author
2025-07-03Merge tag 'Second_Life_Project#bca9ba9b-glTF_Mesh_Import' into gltf_mesh_importErik Kundiman
2025-06-26Disable direct input init on Win ARM64 for nowErik Kundiman
This would be for joysticks & spacemouses, which aren't that urgent. This is disabled as it seems to be causing a segmentation fault on Windows ARM64.
2025-06-03Revert "Promote seh_catcher() et al. to llexception.{h,cpp} for general use."Erik Kundiman
This reverts commit 71d777ea126e7f02cb46c11bdb606094ca06f75c.
2025-06-03Revert "Fix up llexception.h's cross-platform SEH wrapper."Erik Kundiman
This reverts commit 5ed8df22cd59680a685c4ada7daa5555bf59d4fe.
2025-05-29Merge branch 'main' into 2025.05Erik Kundiman
2025-05-28Merge branch 'main' into marchcat/2505-mergeAndrey Lihatskiy
# Conflicts: # .github/workflows/qatest.yaml # indra/llcommon/llsdutil.h # indra/llui/llflatlistview.h # indra/newview/llinventorybridge.cpp # indra/newview/lloutfitgallery.cpp # indra/newview/lloutfitgallery.h
2025-05-28Merge remote-tracking branch 'origin/main' into geenz/2025.04-to-developJonathan "Geenz" Goodman
2025-05-05#3317 Fix full screen issue with Windows 11 24H2Andrey Kleshchev
2025-04-19Merge tag 'Second_Life_Release#11cd9b9-2025.05' into 2025.05Erik Kundiman
2025-04-19Merge tag 'Second_Life_Release#9a333e65-2025.04' into 2025.04Erik Kundiman
2025-04-18Merge develop into release/2025.04Andrey Kleshchev
2025-04-15Merge branch 'release/2025.04' into rye/forevermacJonathan "Geenz" Goodman
2025-04-15Merge branch 'main' into marchcat/maint-c-restoreAndrey Lihatskiy
# Conflicts: # indra/llcommon/lldate.h # indra/newview/llappviewer.cpp # indra/newview/llinventorybridge.cpp # indra/newview/llmaterialeditor.cpp # indra/newview/llviewerparceloverlay.cpp # indra/newview/llvoavatar.cpp
2025-04-12Refactor LLWindowWin32::LLWindowWin32Thread::wakeAndDestroy()Andrey Lihatskiy
Key improvements: 1. Better error handling for thread detachment 2. More careful sequencing of operations 3. Ensuring the window is hidden before proceeding with other shutdown steps 4. Proper checking of thread joinability before detaching
2025-04-11Fix more merge issues:Ansariel
* Re-apply changes from a620e58daccf92b5b8d61347312739720ed2b51a * Fix duplicate code resulting from 826236f1bc065fba257d7954d11ac98c59493445 # Conflicts: # indra/llwindow/llwindowwin32.cpp
2025-04-10Fix merge issues:Ansariel
* Restore changes from 21947778baaca205615a71a97ac8f563c998fdd3 to llwindow/llwindowwin32.cpp * Restore changes from 3758618949684641fc94b5c9478d9002706213cc to newview/llinspecttexture.cpp * Fix apparent merge error in LLInventoryPanel::itemChanged * Restore changes from 1eeecfa1a8bf43a8980217ce34e3b5f4458483e0 in newview/llpaneloutfitsinventory.h * Restore changes from b9633c17e373bfe55b29228996e8473eb041466d in newview/llpaneloutfitsinventory.h & newview/llpanelwearing.cpp * Restore changes from f660f1f0fda4d2363d351fa550b4f8818b46c2c3 in newview/llviewertexture.cpp * Restore changes from b9633c17e373bfe55b29228996e8473eb041466d & 98f7d73d46fdc045759023eda6409e8c791f5cb2 in newview/lloutfitgallery.cpp and newview/lloutfitslist.cpp * Replace changes from 23729442aab7130f3368d433e8a5a9dd45ff6b98 with current implementation in develop branch * Fix more broken changes in LLViewerTexture::saveRawImage * Restore the changes in LLMath both from develop and maint-c * Fix all kind of other merge errors # Conflicts: # indra/llmath/v2math.h # indra/llmath/v3math.h # indra/llui/llfolderviewitem.cpp # indra/llwindow/llwindowwin32.cpp # indra/newview/llfloaterobjectweights.h # indra/newview/lloutfitgallery.cpp # indra/newview/lloutfitslist.cpp # indra/newview/llsidepaneliteminfo.cpp # indra/newview/llvoavatar.cpp
2025-04-10Post-merge cleanup: llwindowwin32.cppAndrey Lihatskiy
2025-04-10Merge commit '9e24b30' into marchcat/maint-c/restoreAndrey Lihatskiy
# Conflicts: # indra/llmath/v2math.cpp # indra/llmath/v2math.h # indra/llmath/v3math.h # indra/llmath/v4math.h # indra/llui/llfolderviewitem.cpp # indra/llui/llfolderviewitem.h # indra/llui/llfolderviewmodel.h # indra/llui/llmodaldialog.cpp # indra/llui/lltexteditor.cpp # indra/llui/lltexteditor.h # indra/llwindow/llwindowwin32.cpp # indra/newview/llagent.cpp # indra/newview/llagentcamera.h # indra/newview/llavatarrenderinfoaccountant.cpp # indra/newview/llconversationmodel.h # indra/newview/llfloaterinventorysettings.cpp # indra/newview/llfloaternamedesc.cpp # indra/newview/llfloaternamedesc.h # indra/newview/llfloaterobjectweights.cpp # indra/newview/llfloaterobjectweights.h # indra/newview/llfolderviewmodelinventory.h # indra/newview/llinspecttexture.cpp # indra/newview/llinventorybridge.cpp # indra/newview/llinventorybridge.h # indra/newview/llinventoryfunctions.cpp # indra/newview/llinventorygallery.h # indra/newview/llinventorygallerymenu.cpp # indra/newview/llinventorymodel.cpp # indra/newview/llinventorypanel.cpp # indra/newview/llinventorypanel.h # indra/newview/llmaterialeditor.cpp # indra/newview/lloutfitgallery.cpp # indra/newview/lloutfitgallery.h # indra/newview/lloutfitslist.cpp # indra/newview/lloutfitslist.h # indra/newview/llpanelgroupcreate.cpp # indra/newview/llpanelgroupgeneral.cpp # indra/newview/llpanelobjectinventory.cpp # indra/newview/llpaneloutfitsinventory.h # indra/newview/llpanelprofile.cpp # indra/newview/llpanelwearing.cpp # indra/newview/llreflectionmap.cpp # indra/newview/llselectmgr.cpp # indra/newview/llsidepanelappearance.cpp # indra/newview/llsidepaneliteminfo.cpp # indra/newview/llteleporthistorystorage.cpp # indra/newview/lltexturectrl.cpp # indra/newview/lltexturectrl.h # indra/newview/lltexturefetch.cpp # indra/newview/lltexturefetch.h # indra/newview/llviewerassetupload.cpp # indra/newview/llviewercamera.cpp # indra/newview/llviewercamera.h # indra/newview/llviewermenufile.cpp # indra/newview/llviewerobject.h # indra/newview/llviewertexture.cpp # indra/newview/llviewerwindow.cpp # indra/newview/llvoavatar.cpp # indra/newview/llvoavatar.h # indra/newview/llvoavatarself.cpp # indra/newview/llvovolume.cpp # indra/newview/llvovolume.h # indra/newview/tests/llviewerassetstats_test.cpp
2025-04-09Merge tag 'Second_Life_Release#632a8648-2025.03' into 2025.03Erik Kundiman
2025-04-08#3892 Crash at fillCompositionLogfontAndrey Kleshchev
2025-04-05#3575 Adjust VRAM budget test a bitAndrey Kleshchev
2025-02-18Merge commit '0679cbdec89fbd3ec470768bdf469f6a1d326859' into tmpErik Kundiman
2025-02-11Rework windows to use zc:wchar_t for better c++ conformance and ↵Rye
compatibility with modern libraries
2025-02-11Fix Tracy memory profiling overloads for aligned allocationsRye
Fix disabling renderdoc support Improve ll_aligned_alloc functions on darwin for 32 and 64byte aligned by utilizing posix_memalign
2025-02-10#3332 Issues with text buffer updatesAndrey Kleshchev
2025-01-23Merge remote-tracking branch 'secondlife/release/2024.12-ForeverFPS' into ↵Erik Kundiman
2024.12-ForeverFPS
2025-01-22viewer#3088 Add graphical init and reinitAndrey Kleshchev
2025-01-20Merge remote-tracking branch 'secondlife/release/2024.12-ForeverFPS' into ↵Erik Kundiman
2024.12-ForeverFPS
2025-01-11#3364 Cap intel adapters' vram to 25% of ramAndrey Kleshchev
2024-10-18Merge remote-tracking branch 'secondlife/release/2024.09-ExtraFPS' into ↵Erik Kundiman
2024.09-ExtraFPS
2024-09-18Avoid LL_ERRS when wgl_ARB_pixel_format is not supported (#2606)Brad Linden
secondlife/viewer#2599
2024-09-09Merge pull request #2530 from secondlife/release/2024.08-DeltaFPSBrad Linden
Release/2024.08 delta fps
2024-09-07Merge remote-tracking branch 'secondlife/release/2024.08-DeltaFPS' into ↵Erik Kundiman
2024.08-DeltaFPS
2024-09-05#2482 Fix for Quadro GPUs claiming to have infinite VRAM (#2511)Dave Parks
2024-09-04viewer#2411 LLFontGL::render optimizationsAndrey Kleshchev
2024-09-01Merge remote-tracking branch 'secondlife/release/2024.08-DeltaFPS' into ↵Erik Kundiman
2024.08-DeltaFPS
2024-08-14Enable /permissive- on MSVC for better standards conformance (#2251)Rye Mutt
* Enable /permissive- on MSVC for better C++ conformance and fix related errors * Clean up left over warning suppressions from old library or msvc versions
2024-07-28Merge remote-tracking branch 'secondlife/release/2024.06-atlasaurus' into ↵Erik Kundiman
2024.06-atlasaurus
2024-07-18#2029 OSMessageBoxWin32 shows message box behind the viewer windowAlexander Gavriliuk
2024-07-11#1859 BugSplat Crash: SecondLifeViewer!<lambda>::operator()(61)Alexander Gavriliuk
2024-07-09Update tracy profiler to 0.10 (#1946)Rye Mutt
2024-07-08Re-enable compiler warnings C4244 and C4396 except for lltracerecording.h ↵Ansariel
and llunittype.h for now
2024-07-05SL-18721 Don't 'post' window destruction, make thread do it automaticallyAndrey Kleshchev
2024-06-17Remove orphaned VRAM handling codeAnsariel
2024-06-10Re-enable compiler warnings C4018, C4100, C4231 and C4506Ansariel
2024-06-09Merge pull request #1613 from Ansariel/DRTVWR-600-maint-AAndrey Lihatskiy
Fix/re-enable MSVC compiler warnings
2024-06-03viewer#1583 [Win] Viewer fails to detect more than 4Gb of video memoryAndrey Kleshchev
2024-06-01Re-enable a lot of compiler warnings for MSVC and address the C4267 ↵Ansariel
"possible loss of precision" warnings
2024-05-28Fix up llexception.h's cross-platform SEH wrapper.Nat Goodspeed
Introduce AlwaysReturn<void> specialization, which always discards any result of calling the specified callable with specified args. Derive new Windows_SEH_exception from LLException, not std::runtime_error. Put the various SEH functions in LL::seh nested namespace, e.g. LL::seh::catcher() as the primary API. Break out more levels of Windows SEH handler to work around the restrictions on functions containing __try/__except. The triadic catcher() overload now does little save declare a std::string stacktrace before forwarding the call to catcher_inner(), passing a reference to stacktrace along with the trycode, filter and handler functions. catcher_inner() accepts the stacktrace and the three function template arguments. It contains the __try/__except logic. It calls a new filter_() wrapper template, which calls fill_stacktrace() before forwarding the call to the caller's filter function. fill_stacktrace(), in the .cpp file, contains the logic to populate the stacktrace string -- unless the Structured Exception is stack overflow, in which case it puts an explanatory string instead. catcher_inner()'s __except clause passes not only the code, but also the stacktrace string, to the caller's handler function. It wraps the caller's handler function in always_return<rtype>(), where rtype is the type returned by the trycode function. This allows a handler to return a value, while also supporting the void handler case, e.g. one that throws a C++ exception. (This is why we need AlwaysReturn<void>: some trycode() functions are themselves void.) For the dyadic catcher() overload, introduce common_filter() containing the logic to distinguish a C++ exception from any other kind of Structured Exception. The fact that the stacktrace is captured before the filter function is called should permit capturing a stacktrace for a C++ exception as well as for most other Structured Exceptions. As before, the monadic catcher() overload supplies the rethrow() handler, in the .cpp file. Change existing calls from seh_catcher() to LL::seh::catcher().
2024-05-24Promote seh_catcher() et al. to llexception.{h,cpp} for general use.Nat Goodspeed