Merge branch 'master' into dev

# Conflicts:
#	package-lock.json
#	src/public/app/entities/fnote.js
#	src/services/notes.js
This commit is contained in:
zadam 2023-02-02 23:35:41 +01:00
commit 15607becc6
6 changed files with 22 additions and 12 deletions

Binary file not shown.

View File

@ -79,11 +79,12 @@ export default class TabManager extends Component {
filteredTabs = filteredTabs.filter(tab => tab.active);
}
if (filteredTabs.length === 0) {
const [notePath] = treeService.getHashValueFromAddress();
// resolve before opened tabs can change this
const [notePathInUrl, ntxIdInUrl] = treeService.getHashValueFromAddress();
if (filteredTabs.length === 0) {
filteredTabs.push({
notePath: notePath || 'root',
notePath: notePathInUrl || 'root',
active: true,
hoistedNoteId: glob.extraHoistedNoteId || 'root'
});
@ -95,17 +96,14 @@ export default class TabManager extends Component {
await this.tabsUpdate.allowUpdateWithoutChange(async () => {
for (const tab of filteredTabs) {
await this.openContextWithNote(tab.notePath, tab.active, tab.ntxId, tab.hoistedNoteId, tab.mainNtxId);
}
});
// if there's notePath in the URL, make sure it's open and active
// (useful, for e.g. opening clipped notes from clipper or opening link in an extra window)
if (treeService.isNotePathInAddress()) {
const [notePath, ntxId] = treeService.getHashValueFromAddress();
await appContext.tabManager.switchToNoteContext(ntxId, notePath);
if (notePathInUrl) {
await appContext.tabManager.switchToNoteContext(ntxIdInUrl, notePathInUrl);
}
}
catch (e) {

View File

@ -4,7 +4,6 @@ const TPL = `
<div class="dropdown right-dropdown-widget dropright">
<style>
.right-dropdown-widget {
width: 53px;
height: 53px;
}
</style>

View File

@ -1,5 +1,6 @@
import options from "../../services/options.js";
import FlexContainer from "./flex_container.js";
import appContext from "../../components/app_context.js";
export default class LeftPaneContainer extends FlexContainer {
constructor() {
@ -16,7 +17,15 @@ export default class LeftPaneContainer extends FlexContainer {
entitiesReloadedEvent({loadResults}) {
if (loadResults.isOptionReloaded("leftPaneVisible")) {
this.toggleInt(this.isEnabled());
const visible = this.isEnabled();
this.toggleInt(visible);
if (visible) {
this.triggerEvent('focusTree');
} else {
const activeNoteContext = appContext.tabManager.getActiveContext();
this.triggerEvent('focusOnDetail', {ntxId: activeNoteContext.ntxId});
}
}
}
}

View File

@ -886,6 +886,11 @@ export default class NoteTreeWidget extends NoteContextAwareWidget {
}
}
async focusTreeEvent() {
this.tree.$container.focus();
this.tree.setFocus(true);
}
/** @returns {FancytreeNode} */
async getNodeFromPath(notePath, expand = false, logErrors = true) {
utils.assertArguments(notePath);

View File

@ -871,12 +871,11 @@ body {
#launcher-pane .launcher-button {
font-size: 150%;
display: inline-block;
padding: 15px 15px;
padding: 13px 13px;
cursor: pointer;
border: none;
color: var(--launcher-pane-text-color);
background-color: var(--launcher-pane-background-color);
width: 53px;
height: 53px;
}