summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/settings.xml12
-rw-r--r--indra/newview/llpanelprimmediacontrols.cpp9
-rw-r--r--indra/newview/llviewermedia.h2
3 files changed, 18 insertions, 5 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index c4722b772e..768fdd4103 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -5294,7 +5294,6 @@
<key>Value</key>
<integer>1</integer>
</map>
-
<key>PluginInstancesCPULimit</key>
<map>
<key>Comment</key>
@@ -5361,6 +5360,17 @@
<key>Value</key>
<integer>13</integer>
</map>
+ <key>PrimMediaControlsUseHoverControlSet</key>
+ <map>
+ <key>Comment</key>
+ <string>Whether or not hovering over prim media uses minimal "hover" controls or the authored control set.</string>
+ <key>Persist</key>
+ <integer>1</integer>
+ <key>Type</key>
+ <string>Boolean</string>
+ <key>Value</key>
+ <integer>0</integer>
+ </map>
<key>PrimMediaMaxRetries</key>
<map>
<key>Comment</key>
diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp
index e4b32c4820..58ca481b77 100644
--- a/indra/newview/llpanelprimmediacontrols.cpp
+++ b/indra/newview/llpanelprimmediacontrols.cpp
@@ -228,7 +228,10 @@ void LLPanelPrimMediaControls::updateShape()
bool can_navigate = parcel->getMediaAllowNavigate();
bool enabled = false;
- bool has_focus = media_impl->hasFocus();
+ // There is no such thing as "has_focus" being different from normal controls set
+ // anymore (as of user feedback from bri 10/09). So we cheat here and force 'has_focus'
+ // to 'true' (or, actually, we use a setting)
+ bool has_focus = (gSavedSettings.getBOOL("PrimMediaControlsUseHoverControlSet")) ? media_impl->hasFocus() : true;
setVisible(enabled);
if (objectp)
@@ -310,8 +313,8 @@ void LLPanelPrimMediaControls::updateShape()
fwd_ctrl->setEnabled(has_focus);
media_address_ctrl->setVisible(false);
media_address_ctrl->setEnabled(false);
- media_play_slider_panel->setVisible(!mini_controls);
- media_play_slider_panel->setEnabled(!mini_controls);
+ media_play_slider_panel->setVisible(has_focus && !mini_controls);
+ media_play_slider_panel->setEnabled(has_focus && !mini_controls);
volume_ctrl->setVisible(has_focus);
volume_up_ctrl->setVisible(has_focus);
diff --git a/indra/newview/llviewermedia.h b/indra/newview/llviewermedia.h
index 517a76ce3d..d6dde0c93e 100644
--- a/indra/newview/llviewermedia.h
+++ b/indra/newview/llviewermedia.h
@@ -258,7 +258,7 @@ public:
void calculateInterest();
F64 getInterest() const { return mInterest; };
F64 getApproximateTextureInterest();
- S32 getProximity() { return mProximity; };
+ S32 getProximity() const { return mProximity; };
// Mark this object as being used in a UI panel instead of on a prim
// This will be used as part of the interest sorting algorithm.