summaryrefslogtreecommitdiff
path: root/indra/llwindow/llwindowwin32.h
AgeCommit message (Collapse)Author
2022-03-29SL-17005 WIP - Use D3D/DXGI to query for available VRAM on WindowsDave Parks
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
2021-12-09SL-16480 Fix for window not saving its position on exit.Runitai Linden
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-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-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-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-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-04-30Merge branch 'master' into DRTVWR-530-maintAndrey Lihatskiy
2021-04-22SL-14977 Extended AltGr to cover oem symbolsAndrey Kleshchev
Typing '}' via 'altgr+=' into a script makes the viewer to derender particles
2021-02-01Merge branch 'master' of https://bitbucket.org/lindenlab/viewer/src/master ↵Andrey Kleshchev
into DRTVWR-515-maint # Conflicts: # autobuild.xml (llca) # indra/llwindow/llwindow.h (SL-13507 vs SL-5894) # indra/newview/llscenemonitor.cpp (SL-14422) # indra/newview/llvovolume.cpp (SL-12069)
2020-07-17SL-13507 Viewer should log resolution of all associated displaysMnikolenko Productengine
2020-07-15SL-5894 #3 WIP enumerate devices to flaoter, let floater set deviceAndrey Kleshchev
temp
2020-07-10SL-5894 Changed joystick init to select device with apropriate manufacturer ↵Andrey Kleshchev
and type
2019-02-08Fix issue where gamma was being corrupted on windows with night light enabledDrake Arconis
2018-01-17Merged in lindenlab/viewer-releaseAndreyL ProductEngine
2017-10-16STORM-2151: Respect "Hide cursor while typing" user setting on WindowsAnsariel
2017-03-27Additional work on : Fix for MAINT-7054 Viewer Crashed when I used Japanese ↵Callum Prentice
IM. (Drake and Appurist convinced me my initial solution was non-optimal)
2017-03-27Fix for MAINT-7054 Viewer Crashed when I used Japanese IM.Callum Prentice
2016-08-18MAINT-5992 Second Life unusable on Windows 10 with 4k monitor SL forcibly ↵pavelkproductengine
overrides DPI compatibility option
2016-07-13MAINT-6493 SL Viewer does not respect the Windows 10 display setting size sliderpavelkproductengine
2016-01-15merge changes for 4.0.1-releaseOz Linden
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-10-27MAINT-5754: For MoaP and MediaCtrls forward all events including KEYUP and ↵Rider Linden
KEYDOWN to the CEF plugin.
2015-07-15New keyboard code for windows that uses system messages directly and works ↵callum_linden
ok. Points to new LLCEFLib
2014-11-03MAINT-3585 FIXED Viewer Crashes when attempting to upload image.ruslantproductengine
The bug was fixed, the reasone of crash is following. The Core Flow view contain another GL context and will not care about restoring a previous. I restore context manually. This path also contain a minor changes in another files. All changes described here. Сhange's for fix current bug. indra/llwindow/llwindow.h indra/llwindow/llwindowheadless.h indra/llwindow/llwindowmacosx.h indra/llwindow/llwindowsdl.h indra/llwindow/llwindowwin32.h indra/newview/lllocalbitmaps.cpp indra/newview/llviewerdisplay.cpp indra/newview/llviewerdisplay.h Twice mUsage initialization (replace to forward initialization). indra/llcharacter/lljointstate.h Looks like condition should be befor memcopy call, otherwise - possible CRASH. indra/llcommon/llmd5.cpp Unused condition and variables. indra/llmath/llsphere.cpp Looks like should be under if otherwise - possible CRASH indra\llprimitive\llmodel.cpp Useless assert's. indra/llrender/llrender.cpp indra/newview/lldaycyclemanager.cpp
2013-06-05merge with viewer-releaseRichard Linden
2013-03-29Update Mac and Windows breakpad builds to latestGraham Madarasz
2012-11-14SH-3406 WIP convert fast timers to lltrace systemRichard Linden
cleaning up build moved most includes of windows.h to llwin32headers.h to disable min/max macros, etc streamlined Time class and consolidated functionality in BlockTimer class llfasttimer is no longer included via llstring.h, so had to add it manually in several places
2012-02-23EXP-1832 FIX Viewer Size not persistent across loginsRichard Linden
made Set Window Size correctly set interior window rect, preserving measured dimensions
2011-12-08Automated merge with http://hg.secondlife.com/viewer-developmentRichard Linden
2011-12-05STORM-1713: Mouse pointer flickers when hovering over any active/clickable ↵Ansariel
UI item
2011-11-28EXP-1485 FIX -- Viewer should have a minimum sizeRichard Linden
moved min size logic into LLWindow
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-03-29EXT-3258 - Viewer freezes while external web browser loads pageRichard Nelson
reviewed by Callum
2010-03-18Backed out changeset f4c0761897c6 EXT-4820([NUX] Viewer dimensions on ↵Igor Borovkov
first-run) by which "moved LLDisplayInfo to llwindow, implemented getting the width/height of screen for mac os and linux." --HG-- branch : product-engine
2010-03-05Working on major bug EXT-4820([NUX] Viewer dimensions on first-run) - moved ↵Eugene Mutavchi
LLDisplayInfo to llwindow, implemented getting the width/height of screen for mac os and linux. --HG-- branch : product-engine
2010-02-05Automated merge with ssh://hg.lindenlab.com/viewer/viewer-2-0Monroe Linden
2010-02-04added code to grab raw key codes from Win32 WPARAM and LPARAM and send to pluginCallum Prentice
factored out keyboard message deserialization for media_plugin_webkit new version of llqtwebkit with Girish's changes to keyboard and cursor handling code
2009-12-10Automated merge with ssh://rick@hg.lindenlab.com/viewer/viewer-2-0Rick Pasetto
2009-12-04Expose window minimize and restore in LLWindow interface.James Cook
Add secondlife:///app/login/reg handler for Reg-In-Client Reviewed with Ambroff