136 lines
3.8 KiB
Markdown
136 lines
3.8 KiB
Markdown
# Wallcards
|
|
|
|
A `lively` wallpaper selector for images and videos with live preview.
|
|
|
|
> [!NOTE]
|
|
> Heavily inspired by other work — see Credits for details.
|
|
|
|
https://github.com/user-attachments/assets/9ffbc83d-95e5-4dcd-a834-7bd224211b55
|
|
|
|
## Features
|
|
|
|
- Browse image and video wallpapers as a scrollable card stack
|
|
- Live preview — applies the wallpaper and updates the colorscheme as you navigate
|
|
- Filter by type or by dominant color
|
|
- Keyboard and partial mouse navigation
|
|
- Full settings panel with layout and behavior options
|
|
|
|
## Dependencies
|
|
|
|
```sh
|
|
pacman -S ffmpeg mpvpaper imagemagick
|
|
```
|
|
|
|
## IPC Commands
|
|
|
|
Control the plugin from the command line:
|
|
|
|
```sh
|
|
qs -c noctalia-shell ipc call plugin:wallcards toggle
|
|
```
|
|
|
|
## Keybinding Examples
|
|
|
|
Add to your compositor configuration:
|
|
|
|
### Hyprland
|
|
|
|
```conf
|
|
bind = SUPER, A, exec, qs -c noctalia-shell ipc call plugin:wallcards toggle
|
|
```
|
|
|
|
### Keybinds
|
|
|
|
#### Navigation
|
|
|
|
| Key | Action |
|
|
| --- | --- |
|
|
| `J` / `←` | Previous wallpaper |
|
|
| `K` / `→` | Next wallpaper |
|
|
| `H` | Scroll page back |
|
|
| `L` | Scroll page forward |
|
|
| `R` | Shuffle |
|
|
|
|
#### Actions
|
|
|
|
| Key | Action |
|
|
| --- | --- |
|
|
| `Enter` | Apply wallpaper and close |
|
|
| `Space` / `↓` | Apply wallpaper |
|
|
| `Esc` / `Q` | Close |
|
|
|
|
#### Filters
|
|
|
|
| Key | Action |
|
|
| --- | --- |
|
|
| `A` | Show all |
|
|
| `I` | Filter images |
|
|
| `V` | Filter videos |
|
|
| `F` | Toggle color filter (based on current card) |
|
|
|
|
#### View
|
|
|
|
| Key | Action |
|
|
| --- | --- |
|
|
| `T` | Toggle top bar |
|
|
| `P` | Toggle live preview |
|
|
| `?` | Toggle shortcut panel |
|
|
|
|
#### Layout
|
|
|
|
| Key | Action |
|
|
| --- | --- |
|
|
| `Shift + H / L` | Adjust card height |
|
|
| `Shift + J / K` | Adjust center card width |
|
|
| `Shift + N / P` | Adjust number of visible cards |
|
|
| `Ctrl + J / K` | Adjust card spacing |
|
|
| `Ctrl + H / L` | Adjust side strip width |
|
|
|
|
#### Save
|
|
|
|
| Key | Action |
|
|
| --- | --- |
|
|
| `Ctrl + S` | Save current layout and view settings |
|
|
|
|
Scroll wheel also works for navigation.
|
|
|
|
## Configuration
|
|
|
|
All settings are available through the plugin settings panel in Noctalia. They can also be edited directly in `settings.json` in the plugin directory `~/.config/noctalia/plugins/wallcards`.
|
|
|
|
| Setting | Description |
|
|
| --- | --- |
|
|
| `animation_cards_duration` | Duration of card transition animations in ms |
|
|
| `animation_window_duration` | Duration of open/close animations in ms |
|
|
| `animate_window` | Enable or disable open/close animations |
|
|
| `background_color` | Color of the dimmed backdrop |
|
|
| `background_opacity` | Opacity of the dimmed backdrop |
|
|
| `cards_shown` | Number of visible cards in the stack |
|
|
| `card_height` | Height of the card area in pixels |
|
|
| `card_spacing` | Gap between cards in pixels |
|
|
| `card_strip_width` | Width of non-center cards |
|
|
| `card_radius` | Border radius of the cards |
|
|
| `center_width_ratio` | Width of the center card as a ratio of the screen |
|
|
| `image_filter` | File extensions treated as images |
|
|
| `video_filter` | File extensions treated as videos |
|
|
| `hide_help` | Hide the keyboard shortcuts panel |
|
|
| `hide_top_bar` | Hide the toolbar above the cards |
|
|
| `live_preview` | Apply wallpaper while navigating |
|
|
| `selected_filter` | Default filter on open (`all`, `images`, `videos`) |
|
|
| `shear_factor` | Shearing applied to the card stack |
|
|
| `top_bar_height` | Height of the toolbar |
|
|
|
|
## Known Issues
|
|
|
|
- When a video card is played, the following warning is spamed ` WARN: vaExportSurfaceHandle failed`. Please contact me, if you have a solution for this.
|
|
- Performance for going left or right differs. It is also affected by the total number of cards (is on my todo list)
|
|
|
|
## License
|
|
|
|
MIT License - see repository for details.
|
|
|
|
## Credits
|
|
|
|
- Inspired by [ilyamiro](https://github.com/ilyamiro/nixos-configuration) and [liixini](https://github.com/liixini/skwd)
|
|
- Built for [Noctalia Shell](https://github.com/noctalia-dev/noctalia-shell)
|