Bug 746380 - Set tab URL on document start. r=mfinkle a=blocking-fennec

This commit is contained in:
Brian Nicholson 2012-04-23 10:34:14 -04:00
Родитель 5323073c13
Коммит e86080e750
1 изменённых файлов: 5 добавлений и 3 удалений

Просмотреть файл

@ -870,6 +870,7 @@ abstract public class GeckoApp
handleSecurityChange(tabId, mode); handleSecurityChange(tabId, mode);
} else if (event.equals("Content:StateChange")) { } else if (event.equals("Content:StateChange")) {
final int tabId = message.getInt("tabID"); final int tabId = message.getInt("tabID");
final String uri = message.getString("uri");
final boolean success = message.getBoolean("success"); final boolean success = message.getBoolean("success");
int state = message.getInt("state"); int state = message.getInt("state");
Log.i(LOGTAG, "State - " + state); Log.i(LOGTAG, "State - " + state);
@ -877,7 +878,7 @@ abstract public class GeckoApp
if ((state & GeckoAppShell.WPL_STATE_START) != 0) { if ((state & GeckoAppShell.WPL_STATE_START) != 0) {
Log.i(LOGTAG, "Got a document start"); Log.i(LOGTAG, "Got a document start");
final boolean showProgress = message.getBoolean("showProgress"); final boolean showProgress = message.getBoolean("showProgress");
handleDocumentStart(tabId, showProgress); handleDocumentStart(tabId, showProgress, uri);
} else if ((state & GeckoAppShell.WPL_STATE_STOP) != 0) { } else if ((state & GeckoAppShell.WPL_STATE_STOP) != 0) {
Log.i(LOGTAG, "Got a document stop"); Log.i(LOGTAG, "Got a document stop");
handleDocumentStop(tabId, success); handleDocumentStop(tabId, success);
@ -1183,11 +1184,12 @@ abstract public class GeckoApp
}); });
} }
void handleDocumentStart(int tabId, final boolean showProgress) { void handleDocumentStart(int tabId, final boolean showProgress, String uri) {
final Tab tab = Tabs.getInstance().getTab(tabId); final Tab tab = Tabs.getInstance().getTab(tabId);
if (tab == null) if (tab == null)
return; return;
tab.updateURL(uri);
tab.setState(Tab.STATE_LOADING); tab.setState(Tab.STATE_LOADING);
tab.updateSecurityMode("unknown"); tab.updateSecurityMode("unknown");
@ -1195,7 +1197,7 @@ abstract public class GeckoApp
public void run() { public void run() {
if (Tabs.getInstance().isSelectedTab(tab)) { if (Tabs.getInstance().isSelectedTab(tab)) {
mBrowserToolbar.setSecurityMode(tab.getSecurityMode()); mBrowserToolbar.setSecurityMode(tab.getSecurityMode());
if (showProgress) if (showProgress && tab.getState() == Tab.STATE_LOADING)
mBrowserToolbar.setProgressVisibility(true); mBrowserToolbar.setProgressVisibility(true);
} }
Tabs.getInstance().notifyListeners(tab, Tabs.TabEvents.START); Tabs.getInstance().notifyListeners(tab, Tabs.TabEvents.START);