Commit Graph

5083 Commits

Author SHA1 Message Date
Latif Khalifa
bcfe5232fb Merge branch 'windows64' of github.com:lkalif/SingularityViewer 2013-10-24 01:37:45 +02:00
Latif Khalifa
6708019a40 Merge branch 'master' of git://github.com/AlericInglewood/SingularityViewer 2013-10-24 01:37:27 +02:00
Latif Khalifa
8565616c9d Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-10-24 01:37:19 +02:00
Shyotl
8e94c43a54 Fix a tp crash, and rework sound preloading slightly. 2013-10-23 17:23:20 -05:00
Inusaito Sayori
2b7e78cb3b That commit where I touch all the ascentprefs headers to make them conform to standard because it's been annoying me too long. 2013-10-23 17:47:33 -04:00
Inusaito Sayori
41303d0c9c Added "Log button opens external text editor (Windows only)" to Adv. Chat UI 2013-10-23 17:44:27 -04:00
Inusaito Sayori
4821d02051 Sometimes UI get this syncing feeling... but then everything seems fine. 2013-10-22 23:59:50 -04:00
Inusaito Sayori
fd42029a61 LLViewerWindow::handleKey(): Partial Fix for Issue 704: Keyboard shortcuts that should be passed to focused text fields are instead passed to selected prims when building
All edit keys now work, but Ctrl-A still doesn't work right, it must be grabbed by something else...
Adds LLFocusMgr::keyboardFocusHasAccelerators()
Adds virtual bool LLView::hasAccelerators() which returns false by default, overrides returning true placed in LLPreviewScript and LLPreviewNotecard
Shortcut keys added to notecard and script menu xmls

I'm thinking Qarl's Align tool handling may be receiving the Ctrl-A, we do seem to handle it differently than Exodus and Firestorm something modern could have broken the old way..
Come to think of it, those two features(Align and Select all prims) have a longstanding shortcut conflict in shortcuts... that's pretty nasty
2013-10-22 23:35:53 -04:00
Inusaito Sayori
574d0dab8d LLViewerWindow::handleKey(): Also handle keys for navigating through the displayed menu 2013-10-22 22:39:15 -04:00
Inusaito Sayori
1aee941cb6 LLViewerWindow::handleKey(): The work in progress bits of the sync, commented out 2013-10-22 09:19:38 -04:00
Inusaito Sayori
75ee99f4d5 LLViewerWindow::handleKey(): More harmlessness (sync)
Handle Tabbing through elements/floaters earlier.
Combine g*Menu*View handleKey() checks.
2013-10-22 09:08:41 -04:00
Inusaito Sayori
45cd0157ef LLViewerWindow::handleKey(): Code cleanup, bit of harmless sync
Moved Notifications Console into the advanced menu for login, so it's not shoved in as a hack, also a bit easier to access
2013-10-22 08:16:12 -04:00
Latif Khalifa
b800e877f9 More manifest gymnastics 2013-10-22 14:01:46 +02:00
Inusaito Sayori
9ec10cf246 Reworked LLToolCompGun so piemenu in mouselook plays nicer with zoom feature
Switches to exodus implementation
Includes relicensing of LLViewerCamera and LLToolComp
Maintains use of the old saved zoomed setting
2013-10-22 07:47:43 -04:00
Latif Khalifa
f545952136 Copy vc++ runtime libs, ignore size_t related warnings in the release build on win64 2013-10-22 11:25:32 +02:00
Latif Khalifa
f7cea9ac74 Added a way to identify 64 bit viewer in help -> about 2013-10-22 01:08:39 +02:00
Latif Khalifa
22db8f56f1 WIP[win64]: installer 2013-10-22 00:59:26 +02:00
Latif Khalifa
5cd7f05851 VS2012 related changes 2013-10-22 00:58:05 +02:00
Inusaito Sayori
dde18dfc0f Added a setting, LiruMouselookMenu, in case people don't want this feature. 2013-10-21 16:01:31 -04:00
Inusaito Sayori
d95e1800e1 Miscellaneous touchups
Fixes chatbar not handling ctrl+shift+arrow for word selection
lltoolmgr.cpp sync
Removes some pointless dead code from llviewertexteditor.cpp
2013-10-21 15:15:17 -04:00
Latif Khalifa
73e1a9ad78 WIP[win64]: we haz 64 bit webkit 2013-10-21 20:42:31 +02:00
Latif Khalifa
ea6adb7ae4 WIP[win64]: Sync this snipped with upstream to avoid texture indexing issues on Windows 64 2013-10-21 15:56:13 +02:00
Latif Khalifa
93e62a375c WIP[win64]: Rebuilt jpeglib, libpng, fixed loading of fmodex 2013-10-20 20:17:03 +02:00
Latif Khalifa
52c8c68d12 Reduce unbearable notification span when a plugin fails to load 2013-10-20 20:16:21 +02:00
Latif Khalifa
17c59f25f5 WIP[win64]: it builds, runs. webkit disabled in cmake for now 2013-10-20 17:03:48 +02:00
Latif Khalifa
6bae4a8d92 WIP: native win64 support 2013-10-20 12:37:35 +02:00
Inusaito Sayori
a33efc61a2 Feature request by StephiDreamEvermore Doune: Implement the convenience of being able to set view offsets while modifier keys are held during scroll in third person camera (Play with camera position/angle) 2013-10-19 20:54:02 -04:00
Inusaito Sayori
bd4e988397 Fix crash signature 222 2013-10-19 20:38:50 -04:00
Latif Khalifa
32bed5660a WIP win64 support 2013-10-19 23:05:53 +02:00
Latif Khalifa
d03a012a41 Added support for Visual Studio 2012 to develop.py and VSTool 2013-10-19 21:10:24 +02:00
Inusaito Sayori
65d2775e2a Address jonhboy's Request: Round land impact instead of chopping off the decimal 2013-10-18 08:58:13 -04:00
Inusaito Sayori
ef3f78175c Satisfy Issue 699: Let Alt-right clicking in mouselook bring up pie menu
Also lltoolpie.cpp cleanup
2013-10-18 08:28:39 -04:00
Inusaito Sayori
7813ca03da LLFloaterInspect: bit of cleanup and allow sorting by creation date regardless of format 2013-10-18 08:21:57 -04:00
Inusaito Sayori
ec5aaa2af8 Modernize LLSelectMgr and fix leaks 2013-10-18 08:20:19 -04:00
Latif Khalifa
4feb1985b0 Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-10-18 09:28:19 +02:00
Shyotl
addd687bf8 What is this? Where am I? Oh god. (Fix mistake in openal audioimpl) 2013-10-18 02:27:09 -05:00
Latif Khalifa
153f783922 Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-10-18 08:51:51 +02:00
Shyotl
e2954fdbfd Fixed a bug where multisampled renderbuffers were being attached to non-FBO-enabled LLRenderTargets. 2013-10-18 01:43:32 -05:00
Shyotl
6fd73ee8bb Use GL_RED instead of GL_LUMINANCE for post-process noise texture. 2013-10-17 22:07:58 -05:00
Shyotl
19d7186508 Merge branch 'master' of git://github.com/siana/SingularityViewer.git 2013-10-17 21:08:30 -05:00
Latif Khalifa
c67f848b5c Merge branch 'master' of https://github.com/siana/SingularityViewer 2013-10-17 05:25:14 +02:00
Latif Khalifa
683bd9375f Merge branch 'master' of git://github.com/Shyotl/SingularityViewer 2013-10-17 05:25:02 +02:00
Shyotl
d18fa5ba42 Modified LLRenderTarget to handle sCurFBO and mPreviousFBO as pointers instead of arbiturary indexes. 2013-10-16 21:35:04 -05:00
Shyotl
03c4535648 Made further refinements to the audioengine:
-Looping syncslaves are stopped when there is no syncmaster.
-Hardened against edge cases regarding soundsource priority sorting.
-Fixed issue with syncmasters being marked as having looped when instead they just started playing (caused double-start of syncslaves).
-Updated some comments.
2013-10-16 21:32:08 -05:00
Aleric Inglewood
811f670199 AIStateMachine fixes.
Things (one debug code only) that don't happen currently,
but that I ran into with AIMultiGrid.
2013-10-16 00:30:28 +02:00
Inusaito Sayori
9dd995a287 Old dead code poofpoof 2013-10-15 17:21:54 -04:00
Aleric Inglewood
e40d622b8c Merge remote-tracking branch 'singu/master' 2013-10-15 23:07:34 +02:00
Aleric Inglewood
09708b6318 Added AICondition.
AICondition is like AIThreadSafeSimpleDC (it is derived from it),
and wraps some variable, protecting it with a builtin mutex.

While in a statemachine, one can call wait(condition) to make
the state machine go idle, and call condition.signal() to
wake it (or another) up again.

While normally a condition variable is used as follows:

condition.lock();
while (!whatwerewaitingfor)
{
  condition.wait();
}
// Here the condition is guaranteed to be true and we're
// still in the critical area of the mutex.
condition.unlock();

where the thread blocks in wait(), the statemachine actually
returns CPU to the thread (the AIEngine), so there is no
while loop involved, and our wait() doesn't even unlock
the mutex: that happens because the state machine returns:

condition_wat condition_w(condition);		// Lock condition.
if (!condition_w->whatwerewaitingfor())		// The variable(s) involved can only be accessed when condition is locked.
{
  wait(condition);				// Causes the state machine to go idle. This does not block.
  break;					// Leave scope (unlock condition) and return to the mainloop - but as idle state machine.
}
// Here the condition is guaranteed to be true and we're
// still in the critical area of the condition variable.

In this case, when condition.signal() is called, the thread
doesn't return from wait() with a locked mutex - but the
statemachine executes the same state again, and enters from
the top: locking the condition and doing the test again,
just like it would be when this was a while loop.
2013-10-15 22:30:53 +02:00
Aleric Inglewood
9114f04ef6 Add AIStateMachine::yield_if_not
This can be used to switch to a specific engine.
If the state machine is not running in the passed engine,
then it performs a yield to that engine, otherwise it keeps
running. Hence, putting this at the top of a state
guarantees that it runs in that engine.

For example:

    case FrontEnd_done:
    {
      // Unlock must be called by the same thread that locked it.
      if (yield_if_not(&gStateMachineThreadEngine))
      {
        break;
      }
      // Here we are running in gStateMachineThreadEngine.
    ...
2013-10-15 22:30:16 +02:00
Aleric Inglewood
9db6bc0557 Add AIStateMachine::mSMDebug
The patch is exclusively libcwd related.

Turns off output from statemachines to dc::statemachine by default.
Allows to turn on the debug output on a per statemachine basis (at
compile time).
2013-10-15 22:29:52 +02:00