diff options
| author | John Reck <jreck@google.com> | 2011-06-07 16:34:43 -0700 |
|---|---|---|
| committer | John Reck <jreck@google.com> | 2011-06-07 16:34:58 -0700 |
| commit | 541f55a0178da7c09fb32aa5385effae031ea071 (patch) | |
| tree | c1e6d7554b9d682fbd6db5b00e7702a8f355ab5f /src/com/android/browser/Controller.java | |
| parent | f33b1637487af3786ee30f295f2c84db6db1e6b3 (diff) | |
Freeze tab improvements
Change-Id: I5d5e5a7a18cafdbe845fa1ef949276bdfd1996d3
Diffstat (limited to 'src/com/android/browser/Controller.java')
| -rw-r--r-- | src/com/android/browser/Controller.java | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java index 6a951c28..986b6174 100644 --- a/src/com/android/browser/Controller.java +++ b/src/com/android/browser/Controller.java @@ -1496,7 +1496,6 @@ public class Controller final MenuItem counter = menu.findItem(R.id.dump_counters_menu_id); counter.setVisible(showDebugSettings); counter.setEnabled(showDebugSettings); - menu.findItem(R.id.freeze_tab_menu_id).setVisible(showDebugSettings); final MenuItem newtab = menu.findItem(R.id.new_tab_menu_id); newtab.setEnabled(getTabControl().canCreateNewTab()); @@ -1605,21 +1604,20 @@ public class Controller case R.id.freeze_tab_menu_id: // TODO: Show error messages - WebView source = getCurrentTopWebView(); + Tab source = getTabControl().getCurrentTab(); if (source == null) break; - Tab t = createNewTab(false, true, false); - if (t == null) break; - WebView pinned = t.getWebView(); - if (pinned == null) break; + Tab snapshot = createNewTab(false, false, false); + if (snapshot == null) break; try { ByteArrayOutputStream bos = new ByteArrayOutputStream(); - source.saveViewState(bos); + source.saveSnapshot(bos); ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray()); - pinned.loadViewState(bis); + snapshot.loadSnapshot(bis); + mUi.onTabDataChanged(snapshot); bis.close(); bos.close(); + setActiveTab(snapshot); } catch (IOException e) { - closeTab(t); } break; |
