|
157 | 157 | }; |
158 | 158 | myPrefObserver.register(); |
159 | 159 |
|
| 160 | + /* Refresh pane */ |
| 161 | + function refreshPane(win) { |
| 162 | + try { win.gFolderTreeView._rebuild(); } |
| 163 | + catch (e) { setTimeout(refreshPane, 5, win); } |
| 164 | + } |
| 165 | + for (let win of Services.wm.getEnumerator("mail:3pane")) { |
| 166 | + refreshPane(win); |
| 167 | + } |
| 168 | + |
| 169 | + /* Ensures that the selected folder is on the screen. */ |
| 170 | + { |
| 171 | + const selected = gFolderTreeView.getSelectedFolders()[0]; |
| 172 | + if (selected) { |
| 173 | + gFolderTreeView._treeElement.ensureRowIsVisible(gFolderTreeView.getIndexOfFolder(selected)); |
| 174 | + } |
| 175 | + } |
160 | 176 |
|
161 | 177 | /* For default startup folder */ |
162 | 178 | const startup_folder = tbsf_prefs.getStringPref("startup_folder"); |
|
182 | 198 | if (firstRun && inRestoreTab) { |
183 | 199 | const folder = MailUtils.getExistingFolder(startup_folder); |
184 | 200 | if (folder) |
185 | | - oldSelectFolder.call(this, folder, true); |
| 201 | + oldSelectFolder.call(this, folder); |
186 | 202 | else |
187 | 203 | oldSelectFolder.call(this, x, y); |
188 | 204 | firstRun = false; |
|
197 | 213 | */ |
198 | 214 | const folder = MailUtils.getExistingFolder(startup_folder); |
199 | 215 | if (folder) { |
200 | | - gFolderTreeView.selectFolder(folder, true); |
| 216 | + if (!gFolderTreeView.selectFolder(folder)) { |
| 217 | + tblog.debug("selectFolder failed"); |
| 218 | + } |
| 219 | + } else { |
| 220 | + tblog.debug(startup_folder+" not found"); |
201 | 221 | } |
202 | 222 | } |
203 | 223 | } |
204 | 224 |
|
205 | | - /* Refresh pane */ |
206 | | - function refreshPane(win) { |
207 | | - try { win.gFolderTreeView._rebuild(); } |
208 | | - catch (e) { setTimeout(refreshPane, 5, win); } |
209 | | - } |
210 | | - for (let win of Services.wm.getEnumerator("mail:3pane")) { |
211 | | - refreshPane(win); |
212 | | - } |
213 | | - |
214 | 225 | })() |
0 commit comments