Check if parent view exists as proxy for isShowing

This commit is contained in:
Aaron Culliney 2015-10-25 21:48:41 -07:00
parent 844d8b815b
commit 38dce3e212
6 changed files with 10 additions and 9 deletions

View File

@ -43,7 +43,7 @@ public abstract class Apple2AbstractMenu implements Apple2MenuView {
setup();
}
public synchronized void show() {
public void show() {
if (isShowing()) {
return;
}
@ -59,7 +59,7 @@ public abstract class Apple2AbstractMenu implements Apple2MenuView {
}
public boolean isShowing() {
return mSettingsView.isShown();
return mSettingsView.getParent() != null;
}
public View getView() {

View File

@ -582,8 +582,9 @@ public class Apple2Activity extends Activity {
// Actually remove View from view hierarchy
{
View menuView = apple2MenuView.getView();
if (menuView.isShown()) {
((ViewGroup) menuView.getParent()).removeView(menuView);
ViewGroup viewGroup = (ViewGroup) menuView.getParent();
if (viewGroup != null) {
viewGroup.removeView(menuView);
}
if (apple2MenuView == mSplashScreen) {
mSplashScreen = null;

View File

@ -184,7 +184,7 @@ public class Apple2DisksMenu implements Apple2MenuView {
}
public boolean isShowing() {
return mDisksView.isShown();
return mDisksView.getParent() != null;
}
public View getView() {

View File

@ -114,7 +114,7 @@ public class Apple2JoystickCalibration implements Apple2MenuView {
}
public boolean isShowing() {
return mSettingsView.isShown();
return mSettingsView.getParent() != null;
}
public View getView() {

View File

@ -119,7 +119,7 @@ public class Apple2KeypadChooser implements Apple2MenuView {
}
public boolean isShowing() {
return mSettingsView.isShown();
return mSettingsView.getParent() != null;
}
public View getView() {

View File

@ -71,7 +71,7 @@ public class Apple2SplashScreen implements Apple2MenuView {
/* ... */
}
public synchronized void show() {
public void show() {
if (isShowing()) {
return;
}
@ -87,7 +87,7 @@ public class Apple2SplashScreen implements Apple2MenuView {
}
public boolean isShowing() {
return mSettingsView.isShown();
return mSettingsView.getParent() != null;
}
public View getView() {