summaryrefslogtreecommitdiff
path: root/indra/llwindow
AgeCommit message (Collapse)Author
2016-04-22Windows: 1. GWL_USERDATA must be GWLP_USERDATA to be compatible with x86 and ↵Nicky
x64. (GWL_USERDATA is deprecated anyway). 3. Replace Get/SetWindowLong with Get/SetWindoeLongPtr or placing this into GWLP_USERDATA will truncate the pointer. (transplanted from 5f50745bff03700d3862a6bb1eb5936be0fdc6cd)
2016-06-30DRTVWR-418: Unify control flow through LLAppViewer across platforms.Nat Goodspeed
The LLApp API used to consist of init(), mainLoop(), cleanup() methods. This makes sense -- but on Mac that structure was being subverted. The method called mainLoop() was in fact being called once per frame. There was initialization code in the method, which (on Mac) needed to be skipped with an already-initialized bool. There was a 'while' loop which (on Mac) needed to be turned into an 'if' instead so the method would return after every frame. Rename LLApp::mainLoop() to frame(). Propagate through subclasses LLAppViewer and LLCrashLogger. Document the fact that frame() returns true to mean "done." (This was always the case, but had to be inferred from the code.) Rename the Mac Objective-C function mainLoop to oneFrame. Rename the C++ free function it calls from runMainLoop() to pumpMainLoop(). Add comments to llappdelegate-objc.mm explaining (inferred) control flow. Change the Linux viewer main() and the Windows viewer WINMAIN() from a single LLAppViewer::mainLoop() call to repeatedly call frame() until it returns true. Move initialization code from the top of LLAppViewer::frame() to the init() method, where it more properly belongs. Remove corresponding mMainLoopInitialized flag (and all references) from LLAppViewer. Remove 'while (! LLApp::isExiting())' (or on Mac, 'if (! LLApp::isExiting())') from LLAppViewer::frame() -- thus unindenting the whole body of the 'while' and causing many lines of apparent change. (Apologies to reviewers.) There are four LLApp states: APP_STATUS_RUNNING, APP_STATUS_QUITTING, APP_STATUS_STOPPED and APP_STATUS_ERROR. Change LLAppViewer::frame() return value from (isExiting()) (QUITTING or ERROR) to (! isRunning()). I do not know under what circumstances the state might transition to STOPPED during a frame() call, but I'm quite sure that if it does, we don't want to call frame() again. We only want a subsequent call if the state is RUNNING. Also rename mainLoop() method in LLCrashLogger subclasses LLCrashLoggerWindows, LLCrashLoggerMac, LLCrashLoggerLinux. Of course it's completely up to the frame() method whether to yield control; none of those in fact do. Honor protocol by returning true (frame() is done), even though each one's main() caller ignores the return value. In fact LLCrashLoggerWindows::mainLoop() wasn't using the return protocol correctly anyway, returning wParam or 0 or 1 -- possibly because the return protocol was never explicitly documented. It should always return true: "I'm done, don't call me again."
2016-05-06merge 4.0.4-release and MAINT-5974Oz Linden
2016-04-21Merged in cinderblocks/storm-2127AndreyL ProductEngine
2016-04-20STORM-2127 - Fix NSException when assigning values that don't exist in cocoa ↵Cinder
modifier key event.
2016-04-07MAINT-6294 FIXED Cursor became invisible after typing in any input field (OS X)Mnikolenko ProductEngine
2016-03-29MAINT-6239 [Mac] Computer cursor appears attached to crosshair after using ↵Mnikolenko ProductEngine
modifier keys in mouselook
2016-03-21MAINT-3171 Alt-clicking while moving mouse can move the camera significantlyMnikolenko ProductEngine
2016-03-10MAINT-3171 WIP Alt-clicking while moving mouse can move the camera significantlyMnikolenko ProductEngine
2016-01-15merge changes for 4.0.1-releaseOz Linden
2015-12-03MAINT-5909: Enable unicode text input on mac and feed that directly into the ↵rider
viewer. Windows fixes still required.
2015-11-13Encode keyboard event for reconstruction in the plugin.rider
2015-11-10remove execute permission from many files that should not have itOz Linden
2015-11-07MAINT-5754: Finish key modifier experiment. Still not working.rider
2015-11-06MAINT-5754: Basic keyboard functionality on the Mac. Still incompleterider
2015-10-27MAINT-5754: For MoaP and MediaCtrls forward all events including KEYUP and ↵Rider Linden
KEYDOWN to the CEF plugin.
2015-10-20Merge with tip of viewer-releasecallum_linden
2015-10-13merge changes for MAINT-4734pavelkproductengine
2015-09-29Merge with viewer-xcode-7 for Xcode 7 patchescallum_linden
2015-09-18Supress error after Xcode 7 update: error: null passed to a callee that ↵callum_linden
requires a non-null argument
2015-08-31Merge with viewer-releasecallum_linden
2015-07-15New keyboard code for windows that uses system messages directly and works ↵callum_linden
ok. Points to new LLCEFLib
2015-07-14MAINT-5019 FIXED Additional casesAndreyL ProductEngine
2015-04-28increment viewer version to 3.7.29Mnikolenko ProductEngine
2015-04-24MAINT-5106 FIXED [MAC] if SL viewer is not running, clicking on SLURL ↵pavelk_productengine
launches viewer, BUT start location is not set
2015-04-28Merge viewer-release, become version 3.7.29Mnikolenko ProductEngine
2015-04-13merge changes for 3.7.27-releaseOz Linden
2015-03-30MAINT-3585 FIXED (Crashes when attempting to upload image.)ruslantproductengine
2015-03-30MAINT-3585 FIXED (Crashes when attempting to upload image.)ruslantproductengine
2015-03-05MAINT-4874 FIXED Actions that require a double click "randomly" fail - repro ↵andreykproductengine
& cause found for BUG-7753
2015-02-24merge changes for 3.7.25-releaseOz Linden
2015-01-13merge changes for 3.7.24-releaseOz Linden
2014-12-15merge changes for 3.7.22-releaseOz Linden
2014-12-12Fix up remaining llround() -> ll_round() issuescallum_linden
2014-12-02Merge downstream code and become 3.7.22simon
2014-12-02mergeBrad Payne (Vir Linden)
2014-12-01mergeBrad Payne (Vir Linden)
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
2014-10-23merge changes for STORM-2081Oz Linden
2014-10-23STORM-2081 - Guard against null gWindowImplementation when fullscreen ↵Cinder
(crashes OS X Yosemite)
2014-10-17Update to build on Xcode 6.0: more removal of unused variables ↵callum_linden
[-Wunused-variable]
2014-10-17Update to build on Xcode 6.0: fix deprecated constant in OS X landcallum_linden
2014-10-13merge changes for OPEN-215Oz Linden
2014-10-13merge changes for 3.7.17-releaseOz Linden
2014-09-12MAINT-3666 FIXED Update modifiers when viewer window becomes key windowMnikolenko ProductEngine
2014-09-11MAINT-3569 FIXED Handle window hide/unhide and minimize/unminimize events on ↵Mnikolenko ProductEngine
mac.
2014-09-04MAINT-4323 FIXED Mouselook - right-click locks cam position (mac-only)Mnikolenko ProductEngine
2014-08-14fixed: bad behavior of input windowPell Smit
2014-08-15fixed: unwanted input window on OSXPell Smit
2014-08-14fixed: modifier key bugPell Smit