Merge "Using state to update voice button proxy visibility instead of view flags. (Bug 10915381)" into jb-ub-now-indigo-rose
This commit is contained in:
@@ -900,6 +900,9 @@ public class Launcher extends Activity
|
||||
// Process any items that were added while Launcher was away.
|
||||
InstallShortcutReceiver.disableAndFlushInstallQueue(this);
|
||||
|
||||
// Update the voice search button proxy
|
||||
updateVoiceButtonProxyVisible(false);
|
||||
|
||||
// Again, as with the above scenario, it's possible that one or more of the global icons
|
||||
// were updated in the wrong orientation.
|
||||
updateGlobalIcons();
|
||||
@@ -3338,7 +3341,7 @@ public class Launcher extends Activity
|
||||
if (voiceButtonContainer != null) voiceButtonContainer.setVisibility(View.GONE);
|
||||
if (searchButton != null) searchButton.setVisibility(View.GONE);
|
||||
if (voiceButton != null) voiceButton.setVisibility(View.GONE);
|
||||
setVoiceButtonProxyVisible(false);
|
||||
updateVoiceButtonProxyVisible(false);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -3385,13 +3388,13 @@ public class Launcher extends Activity
|
||||
}
|
||||
if (voiceButtonContainer != null) voiceButtonContainer.setVisibility(View.VISIBLE);
|
||||
voiceButton.setVisibility(View.VISIBLE);
|
||||
setVoiceButtonProxyVisible(true);
|
||||
updateVoiceButtonProxyVisible(false);
|
||||
invalidatePressedFocusedStates(voiceButtonContainer, voiceButton);
|
||||
return true;
|
||||
} else {
|
||||
if (voiceButtonContainer != null) voiceButtonContainer.setVisibility(View.GONE);
|
||||
if (voiceButton != null) voiceButton.setVisibility(View.GONE);
|
||||
setVoiceButtonProxyVisible(false);
|
||||
updateVoiceButtonProxyVisible(false);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@@ -3403,12 +3406,23 @@ public class Launcher extends Activity
|
||||
invalidatePressedFocusedStates(voiceButtonContainer, voiceButton);
|
||||
}
|
||||
|
||||
public void setVoiceButtonProxyVisible(boolean visible) {
|
||||
public void updateVoiceButtonProxyVisible(boolean forceDisableVoiceButtonProxy) {
|
||||
final View voiceButtonProxy = findViewById(R.id.voice_button_proxy);
|
||||
if (voiceButtonProxy != null) {
|
||||
boolean visible = !forceDisableVoiceButtonProxy &&
|
||||
mWorkspace.shouldVoiceButtonProxyBeVisible();
|
||||
voiceButtonProxy.setVisibility(visible ? View.VISIBLE : View.GONE);
|
||||
voiceButtonProxy.bringToFront();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This is an overrid eot disable the voice button proxy. If disabled is true, then the voice button proxy
|
||||
* will be hidden regardless of what shouldVoiceButtonProxyBeVisible() returns.
|
||||
*/
|
||||
public void disableVoiceButtonProxy(boolean disabled) {
|
||||
updateVoiceButtonProxyVisible(disabled);
|
||||
}
|
||||
/**
|
||||
* Sets the app market icon
|
||||
*/
|
||||
|
||||
@@ -1036,14 +1036,14 @@ public class Workspace extends SmoothPagedView
|
||||
if (mCustomContentCallbacks != null) {
|
||||
mCustomContentCallbacks.onShow();
|
||||
mCustomContentShowTime = System.currentTimeMillis();
|
||||
mLauncher.setVoiceButtonProxyVisible(false);
|
||||
mLauncher.updateVoiceButtonProxyVisible(false);
|
||||
}
|
||||
} else if (hasCustomContent() && getNextPage() != 0 && mCustomContentShowing) {
|
||||
mCustomContentShowing = false;
|
||||
if (mCustomContentCallbacks != null) {
|
||||
mCustomContentCallbacks.onHide();
|
||||
mLauncher.resetQSBScroll();
|
||||
mLauncher.setVoiceButtonProxyVisible(true);
|
||||
mLauncher.updateVoiceButtonProxyVisible(false);
|
||||
}
|
||||
}
|
||||
};
|
||||
@@ -1823,6 +1823,16 @@ public class Workspace extends SmoothPagedView
|
||||
return offsetDelta;
|
||||
}
|
||||
|
||||
boolean shouldVoiceButtonProxyBeVisible() {
|
||||
if (isOnOrMovingToCustomContent()) {
|
||||
return false;
|
||||
}
|
||||
if (mState != State.NORMAL) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
Animator getChangeStateAnimation(final State state, boolean animated, int delay, int snapPage) {
|
||||
if (mState == state) {
|
||||
return null;
|
||||
@@ -1975,11 +1985,7 @@ public class Workspace extends SmoothPagedView
|
||||
setScaleY(mNewScale);
|
||||
setTranslationY(finalWorkspaceTranslationY);
|
||||
}
|
||||
if (finalSearchBarAlpha == 0) {
|
||||
mLauncher.setVoiceButtonProxyVisible(false);
|
||||
} else {
|
||||
mLauncher.setVoiceButtonProxyVisible(true);
|
||||
}
|
||||
mLauncher.updateVoiceButtonProxyVisible(false);
|
||||
|
||||
if (stateIsSpringLoaded) {
|
||||
// Right now we're covered by Apps Customize
|
||||
|
||||
Reference in New Issue
Block a user