(paneKey, { fallbackToCurrent = false } = {})
| 2312 | } |
| 2313 | |
| 2314 | function resolvePaneFolderForTitle(paneKey, { fallbackToCurrent = false } = {}) { |
| 2315 | if (!paneKey) return ''; |
| 2316 | let folder = ''; |
| 2317 | let sourceId = ''; |
| 2318 | try { |
| 2319 | const state = getPaneState(paneKey); |
| 2320 | folder = (state && typeof state.currentFolder === 'string') |
| 2321 | ? state.currentFolder.trim() |
| 2322 | : ''; |
| 2323 | sourceId = (state && typeof state.sourceId === 'string') |
| 2324 | ? state.sourceId.trim() |
| 2325 | : ''; |
| 2326 | } catch (e) { |
| 2327 | folder = ''; |
| 2328 | } |
| 2329 | |
| 2330 | if (!folder) { |
| 2331 | const id = sourceId || getPaneSourceId(paneKey); |
| 2332 | folder = readStoredPaneFolder(paneKey, id); |
| 2333 | } |
| 2334 | |
| 2335 | if (!folder && fallbackToCurrent) { |
| 2336 | const id = sourceId || getPaneSourceId(paneKey); |
| 2337 | if (id) { |
| 2338 | folder = getLastOpenedFolder(id) || 'root'; |
| 2339 | } else { |
| 2340 | folder = window.currentFolder || getLastOpenedFolder(id) || 'root'; |
| 2341 | } |
| 2342 | } |
| 2343 | |
| 2344 | return folder || ''; |
| 2345 | } |
| 2346 | |
| 2347 | function refreshPaneTitlesFromState() { |
| 2348 | ensurePaneState(); |
no test coverage detected