# mlohajner/cinnamon_superview architecture

> Architecture diagram of the GitHub repository mlohajner/cinnamon_superview, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/mlohajner/cinnamon_superview
- Repository: https://github.com/mlohajner/cinnamon_superview

## Overview

Cinnamon SuperView integrates the Cinnamon menu with the desktop Overview: opening the menu from the Super key can show both, while a panel click remains menu-only; closing the menu also dismisses the Overview. The repository supplies patched menu and Overview implementations for Cinnamon 6.4 and 6.6, plus GSettings customization. The excerpts show the menu and Overview runtime responsibilities, but not the specific integration calls; those links are documented in the README. The schema’s exact setting definitions were not sampled.

Main entry points: [`cinnamon6.4.x/applet.js`](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.4.x/applet.js) (Menu applet), [`cinnamon6.6.x/applet.js`](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.6.x/applet.js) (Menu applet), [`cinnamon6.4.x/overview.js`](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.4.x/overview.js) (Overview), [`cinnamon6.6.x/overview.js`](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.6.x/overview.js) (Overview)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_v64["Cinnamon 6.4"]
  node_menu64["Menu applet<br/>[applet.js]"]
  node_overview64["Overview<br/>[overview.js]"]
end

subgraph group_v66["Cinnamon 6.6"]
  node_menu66["Menu applet<br/>[applet.js]"]
  node_overview66["Overview<br/>[overview.js]"]
end

subgraph group_config["Overview settings"]
  node_settings["Overview settings"]
end

node_user(("Desktop user"))

node_user -->|"opens menu"| node_menu64
node_user -->|"opens menu"| node_menu66
node_menu64 -->|"shows together"| node_overview64
node_menu66 -->|"shows together"| node_overview66
node_menu64 -->|"closes with menu"| node_overview64
node_menu66 -->|"closes with menu"| node_overview66
node_settings -->|"customizes"| node_overview64
node_settings -->|"customizes"| node_overview66

click node_menu64 "https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.4.x/applet.js"
click node_overview64 "https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.4.x/overview.js"
click node_menu66 "https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.6.x/applet.js"
click node_overview66 "https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.6.x/overview.js"
click node_settings "https://github.com/mlohajner/cinnamon_superview/blob/main/org.cinnamon.desktop.overview.gschema.xml"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_menu64,node_overview64,node_user toneBlue
class node_menu66,node_overview66 toneAmber
class node_settings toneMint
```

## Components

### Cinnamon 6.4

- [Menu applet](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.4.x/applet.js): `cinnamon6.4.x/applet.js`
- [Overview](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.4.x/overview.js): `cinnamon6.4.x/overview.js`

### Cinnamon 6.6

- [Menu applet](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.6.x/applet.js): `cinnamon6.6.x/applet.js`
- [Overview](https://github.com/mlohajner/cinnamon_superview/blob/main/cinnamon6.6.x/overview.js): `cinnamon6.6.x/overview.js`

### Overview settings

- [Overview settings](https://github.com/mlohajner/cinnamon_superview/blob/main/org.cinnamon.desktop.overview.gschema.xml): `org.cinnamon.desktop.overview.gschema.xml`

### Other components

- **Desktop user**

## Connections

- Desktop user → Menu applet: opens menu (evidence: `README.md`)
- Desktop user → Menu applet: opens menu (evidence: `README.md`)
- Menu applet → Overview: shows together (evidence: `README.md`)
- Menu applet → Overview: shows together (evidence: `README.md`)
- Menu applet → Overview: closes with menu (evidence: `README.md`)
- Menu applet → Overview: closes with menu (evidence: `README.md`)
- Overview settings → Overview: customizes (evidence: `README.md`)
- Overview settings → Overview: customizes (evidence: `README.md`)
