diff --git a/src/public/app/services/note_list_renderer.ts b/src/public/app/services/note_list_renderer.ts index 125e93005..f9a9d0d66 100644 --- a/src/public/app/services/note_list_renderer.ts +++ b/src/public/app/services/note_list_renderer.ts @@ -40,6 +40,10 @@ export default class NoteListRenderer { } } + get isFullHeight() { + return this.viewMode?.isFullHeight; + } + async renderList() { if (!this.viewMode) { return null; diff --git a/src/public/app/widgets/note_list.ts b/src/public/app/widgets/note_list.ts index 2775aea78..1ff4ffb90 100644 --- a/src/public/app/widgets/note_list.ts +++ b/src/public/app/widgets/note_list.ts @@ -15,6 +15,11 @@ const TPL = ` .note-list-widget .note-list { padding: 10px; } + + .note-list-widget.full-height, + .note-list-widget.full-height .note-list-widget-content { + height: 100%; + }
@@ -68,6 +73,7 @@ export default class NoteListWidget extends NoteContextAwareWidget { async renderNoteList(note: FNote) { const noteListRenderer = new NoteListRenderer(this.$content, note, note.getChildNoteIds()); + this.$widget.toggleClass("full-height", noteListRenderer.isFullHeight); await noteListRenderer.renderList(); this.viewMode = noteListRenderer.viewMode; } diff --git a/src/public/app/widgets/view_widgets/calendar_view.ts b/src/public/app/widgets/view_widgets/calendar_view.ts index fc1d2595f..bf913c9e9 100644 --- a/src/public/app/widgets/view_widgets/calendar_view.ts +++ b/src/public/app/widgets/view_widgets/calendar_view.ts @@ -78,6 +78,10 @@ export default class CalendarView extends ViewMode { args.$parent.append(this.$root); } + get isFullHeight(): boolean { + return true; + } + async renderList(): Promise | undefined> { const isEditable = true; @@ -98,7 +102,8 @@ export default class CalendarView extends ViewMode { select: (e) => this.#onCalendarSelection(e), eventChange: (e) => this.#onEventMoved(e), firstDay: options.getInt("firstDayOfWeek") ?? 0, - locale: await CalendarView.#getLocale() + locale: await CalendarView.#getLocale(), + height: "100%" }); calendar.render(); this.calendar = calendar; diff --git a/src/public/app/widgets/view_widgets/view_mode.ts b/src/public/app/widgets/view_widgets/view_mode.ts index e17d3cebf..719f04bc1 100644 --- a/src/public/app/widgets/view_widgets/view_mode.ts +++ b/src/public/app/widgets/view_widgets/view_mode.ts @@ -21,4 +21,9 @@ export default abstract class ViewMode { // Do nothing by default. } + get isFullHeight() { + // Override to change its value. + return false; + } + }