dialog stack is now a java.util.Stack

This commit is contained in:
fkloft 2013-09-22 19:27:11 +02:00
parent 57710d2074
commit b83b6a56f8

View File

@ -35,7 +35,6 @@ import com.cradle.iitc_mobile.IITC_NavigationHelper.Pane;
import java.io.IOException; import java.io.IOException;
import java.net.URISyntaxException; import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.Locale; import java.util.Locale;
import java.util.Stack; import java.util.Stack;
@ -56,7 +55,7 @@ public class IITC_Mobile extends Activity {
private boolean mDesktopMode = false; private boolean mDesktopMode = false;
private boolean mAdvancedMenu = false; private boolean mAdvancedMenu = false;
private boolean mReloadNeeded = false; private boolean mReloadNeeded = false;
private final ArrayList<String> mDialogStack = new ArrayList<String>(); private final Stack<String> mDialogStack = new Stack<String>();
private SharedPreferences mSharedPrefs; private SharedPreferences mSharedPrefs;
private IITC_NavigationHelper mNavigationHelper; private IITC_NavigationHelper mNavigationHelper;
@ -321,8 +320,7 @@ public class IITC_Mobile extends Activity {
public void onBackPressed() { public void onBackPressed() {
// first kill all open iitc dialogs // first kill all open iitc dialogs
if (!mDialogStack.isEmpty()) { if (!mDialogStack.isEmpty()) {
int last = mDialogStack.size() - 1; String id = mDialogStack.pop();
String id = mDialogStack.get(last);
mIitcWebView.loadUrl("javascript: " + mIitcWebView.loadUrl("javascript: " +
"var selector = $(window.DIALOGS['" + id + "']); " + "var selector = $(window.DIALOGS['" + id + "']); " +
"selector.dialog('close'); " + "selector.dialog('close'); " +
@ -598,14 +596,14 @@ public class IITC_Mobile extends Activity {
public void setFocusedDialog(String id) { public void setFocusedDialog(String id) {
Log.d("iitcm", "Dialog " + id + " focused"); Log.d("iitcm", "Dialog " + id + " focused");
mDialogStack.remove(id); mDialogStack.remove(id);
mDialogStack.add(id); mDialogStack.push(id);
} }
// called by the javascript interface // called by the javascript interface
public void dialogOpened(String id, boolean open) { public void dialogOpened(String id, boolean open) {
if (open) { if (open) {
Log.d("iitcm", "Dialog " + id + " added"); Log.d("iitcm", "Dialog " + id + " added");
mDialogStack.add(id); mDialogStack.push(id);
} else { } else {
Log.d("iitcm", "Dialog " + id + " closed"); Log.d("iitcm", "Dialog " + id + " closed");
mDialogStack.remove(id); mDialogStack.remove(id);