Skip to content

Commit fdbe507

Browse files
Fixed various issues and made more features optional
1 parent 15524a3 commit fdbe507

File tree

6 files changed

+25
-27
lines changed

6 files changed

+25
-27
lines changed

src/canvas-extensions/dataset-exposers/canvas-metadata-exposer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default class CanvasMetadataExposerExtension extends CanvasExtension {
1818

1919
private updateExposedSettings(canvas: Canvas) {
2020
// Expose start node
21-
const startNodeId = canvas.getMetadata('startNode')
21+
const startNodeId = canvas.metadata['startNode']
2222
for (const [nodeId, node] of canvas.nodes) {
2323
if (nodeId === startNodeId) node.nodeEl.dataset.isStartNode = 'true'
2424
else delete node.nodeEl.dataset.isStartNode

src/canvas-extensions/frontmatter-modal-canvas-extension.ts renamed to src/canvas-extensions/frontmatter-control-button-canvas-extension.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import CanvasExtension from "./canvas-extension"
33
import CanvasHelper from "src/utils/canvas-helper"
44
import { Notice } from "obsidian"
55

6-
export default class FrontmatterModalCanvasExtension extends CanvasExtension {
6+
export default class FrontmatterControlButtonCanvasExtension extends CanvasExtension {
77
isEnabled() { return 'canvasMetadataCompatibilityEnabled' as const }
88

99
init() {

src/canvas-extensions/presentation-canvas-extension.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ export default class PresentationCanvasExtension extends CanvasExtension {
154154

155155
private setStartNode(canvas: Canvas, node: CanvasNode | undefined) {
156156
if (!node) return
157-
canvas.setMetadata('startNode', node.getData().id)
157+
canvas.metadata['startNode'] = node.getData().id
158158
}
159159

160160
private getDefaultSlideSize(): Size {
@@ -169,7 +169,7 @@ export default class PresentationCanvasExtension extends CanvasExtension {
169169
}
170170

171171
private addSlide(canvas: Canvas, pos?: Position, bbox?: BBox) {
172-
const isStartNode = canvas.getMetadata('startNode') === undefined
172+
const isStartNode = canvas.metadata['startNode'] === undefined
173173
const slideSize = this.getDefaultSlideSize()
174174
const slideAspectRatio = this.getSlideAspectRatio()
175175

@@ -207,7 +207,7 @@ export default class PresentationCanvasExtension extends CanvasExtension {
207207
ratio: slideAspectRatio
208208
})
209209

210-
if (isStartNode) canvas.setMetadata('startNode', groupNode.getData().id)
210+
if (isStartNode) canvas.metadata['startNode'] = groupNode.getData().id
211211
}
212212

213213
private async animateNodeTransition(canvas: Canvas, fromNode: CanvasNode|undefined, toNode: CanvasNode) {
@@ -244,7 +244,7 @@ export default class PresentationCanvasExtension extends CanvasExtension {
244244
private async startPresentation(canvas: Canvas, tryContinue: boolean = false) {
245245
// Only reset visited nodes if we are not trying to continue
246246
if (!tryContinue || this.visitedNodeIds.length === 0) {
247-
const startNode = canvas.getMetadata('startNode') && canvas.nodes.get(canvas.getMetadata('startNode'))
247+
const startNode = canvas.metadata['startNode'] && canvas.nodes.get(canvas.metadata['startNode'])
248248
if (!startNode) {
249249
new Notice('No start node found. Please mark a node as a start node trough the popup menu.')
250250
return

src/main.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import EncapsulateCanvasExtension from './canvas-extensions/encapsulate-canvas-e
3434
import CommandsCanvasExtension from './canvas-extensions/commands-canvas-extension'
3535
import AutoResizeNodeCanvasExtension from './canvas-extensions/auto-resize-node-canvas-extension'
3636
import PortalsCanvasExtension from './canvas-extensions/portals-canvas-extension'
37-
import FrontmatterModalCanvasExtension from './canvas-extensions/frontmatter-modal-canvas-extension'
37+
import FrontmatterControlButtonCanvasExtension from './canvas-extensions/frontmatter-control-button-canvas-extension'
3838
import BetterDefaultSettingsCanvasExtension from './canvas-extensions/better-default-settings-canvas-extension'
3939
import ColorPaletteCanvasExtension from './canvas-extensions/color-palette-canvas-extension'
4040
import CollapsibleGroupsCanvasExtension from './canvas-extensions/collapsible-groups-canvas-extension'
@@ -48,6 +48,7 @@ import NodeStylesExtension from './canvas-extensions/advanced-styles/node-styles
4848
import EdgeStylesExtension from './canvas-extensions/advanced-styles/edge-styles'
4949

5050
// Dataset Exposers
51+
import CanvasMetadataExposerExtension from './canvas-extensions/dataset-exposers/canvas-metadata-exposer'
5152
import NodeInteractionExposerExtension from './canvas-extensions/dataset-exposers/node-interaction-exposer'
5253
import NodeExposerExtension from './canvas-extensions/dataset-exposers/node-exposer'
5354
import EdgeExposerExtension from './canvas-extensions/dataset-exposers/edge-exposer'
@@ -79,12 +80,13 @@ const CANVAS_EXTENSIONS: typeof CanvasExtension[] = [
7980
PortalsCanvasExtension,
8081

8182
// UI Extensions (Non-savable data)
83+
CanvasMetadataExposerExtension,
8284
CanvasWrapperExposerExtension,
8385
NodeExposerExtension,
8486
EdgeExposerExtension,
8587
NodeInteractionExposerExtension,
8688

87-
FrontmatterModalCanvasExtension,
89+
FrontmatterControlButtonCanvasExtension,
8890
BetterDefaultSettingsCanvasExtension,
8991
CommandsCanvasExtension,
9092
BetterReadonlyCanvasExtension,

src/settings.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,10 @@ export const DEFAULT_SETTINGS_VALUES: AdvancedCanvasPluginSettingsValues = {
135135

136136
variableBreakpointFeatureEnabled: false,
137137

138-
zOrderingControlFeatureEnabled: true,
138+
zOrderingControlFeatureEnabled: false,
139139
zOrderingControlShowOneLayerShiftOptions: false,
140140

141-
aspectRatioControlFeatureEnabled: true,
141+
aspectRatioControlFeatureEnabled: false,
142142

143143
commandsFeatureEnabled: true,
144144
zoomToClonedNode: true,
@@ -154,7 +154,7 @@ export const DEFAULT_SETTINGS_VALUES: AdvancedCanvasPluginSettingsValues = {
154154

155155
betterExportFeatureEnabled: true,
156156

157-
betterReadonlyEnabled: true,
157+
betterReadonlyEnabled: false,
158158
hideBackgroundGridWhenInReadonly: true,
159159
disableNodePopup: false,
160160
disableZoom: false,
@@ -168,7 +168,7 @@ export const DEFAULT_SETTINGS_VALUES: AdvancedCanvasPluginSettingsValues = {
168168
collapsibleGroupsFeatureEnabled: true,
169169
collapsedGroupPreviewOnDrag: true,
170170

171-
focusModeFeatureEnabled: true,
171+
focusModeFeatureEnabled: false,
172172

173173
presentationFeatureEnabled: true,
174174
showSetStartNodeInPopup: false,
@@ -182,7 +182,7 @@ export const DEFAULT_SETTINGS_VALUES: AdvancedCanvasPluginSettingsValues = {
182182
slideTransitionAnimationDuration: 0.5,
183183
slideTransitionAnimationIntensity: 1.25,
184184

185-
canvasEncapsulationEnabled: true,
185+
canvasEncapsulationEnabled: false,
186186

187187
portalsFeatureEnabled: true,
188188
showEdgesIntoDisabledPortals: true

src/styles/settings.scss

Lines changed: 10 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,9 +27,19 @@
2727
}
2828
}
2929

30+
.settings-header-children {
31+
transform-origin: top center;
32+
33+
transform: scaleY(1);
34+
transition: transform 0.2s ease-in-out;
35+
}
36+
3037
.ac-settings-heading:has(.checkbox-container:not(.is-enabled)) + .settings-header-children {
3138
opacity: 0.5;
3239
pointer-events: none;
40+
41+
height: 0;
42+
transform: scaleY(0);
3343
}
3444

3545
details.setting-item {
@@ -130,18 +140,4 @@ body.is-mobile .kofi-button.sticky {
130140
.no-button {
131141
cursor: pointer;
132142
}
133-
}
134-
135-
// Quicksettings
136-
.quicksettings-suggestion {
137-
display: flex;
138-
flex-direction: column;
139-
140-
.quicksettings-suggestion-label {
141-
font-weight: 500;
142-
}
143-
144-
.quicksettings-suggestion-description {
145-
color: var(--text-muted);
146-
}
147143
}

0 commit comments

Comments
 (0)