summaryrefslogtreecommitdiff
path: root/indra/newview/llfilepicker.cpp
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2010-03-08 21:33:19 -0600
committerDave Parks <davep@lindenlab.com>2010-03-08 21:33:19 -0600
commit38334e22e3dbbf7ddc735e8f64a8dc39691d1701 (patch)
tree5a1cb7c36e4e532585699d7fd680e02a217087e9 /indra/newview/llfilepicker.cpp
parentb9a2c6eafacdaa4838cd62672b3255c3e9c0ee16 (diff)
Multi-threaded file dialog
Diffstat (limited to 'indra/newview/llfilepicker.cpp')
-rw-r--r--indra/newview/llfilepicker.cpp19
1 files changed, 13 insertions, 6 deletions
diff --git a/indra/newview/llfilepicker.cpp b/indra/newview/llfilepicker.cpp
index 6a502e8d8c..868d0b67c8 100644
--- a/indra/newview/llfilepicker.cpp
+++ b/indra/newview/llfilepicker.cpp
@@ -211,7 +211,7 @@ BOOL LLFilePicker::setupFilter(ELoadFilter filter)
return res;
}
-BOOL LLFilePicker::getOpenFile(ELoadFilter filter)
+BOOL LLFilePicker::getOpenFile(ELoadFilter filter, BOOL blocking)
{
if( mLocked )
{
@@ -230,8 +230,11 @@ BOOL LLFilePicker::getOpenFile(ELoadFilter filter)
setupFilter(filter);
- // Modal, so pause agent
- send_agent_pause();
+ if (blocking)
+ {
+ // Modal, so pause agent
+ send_agent_pause();
+ }
reset();
@@ -242,10 +245,14 @@ BOOL LLFilePicker::getOpenFile(ELoadFilter filter)
std::string filename = utf16str_to_utf8str(llutf16string(mFilesW));
mFiles.push_back(filename);
}
- send_agent_resume();
- // Account for the fact that the app has been stalled.
- LLFrameTimer::updateFrameTime();
+ if (blocking)
+ {
+ send_agent_resume();
+ // Account for the fact that the app has been stalled.
+ LLFrameTimer::updateFrameTime();
+ }
+
return success;
}