Commit Graph

259 Commits

Author SHA1 Message Date
Přemysl Eric Janouch 9699b80e9d
Very mildly improve stream handling 2024-02-10 18:35:10 +01:00
Přemysl Eric Janouch 4b592ec295
Fix build in bare configurations 2023-08-01 02:37:48 +02:00
Přemysl Eric Janouch 58eb7edfd5
Make the scroll wheel act on the gauge and volume 2023-07-23 15:51:22 +02:00
Přemysl Eric Janouch 48fc9bdb19
Add vertical padding to the status bar as well
For symmetry, if for nothing else.
2023-07-23 15:36:37 +02:00
Přemysl Eric Janouch 9ab5ab6928
Change volume in finer steps 2023-07-20 13:20:34 +02:00
Přemysl Eric Janouch 93e0d7027a
Fix build on systems without A_ITALIC
Unfortunately, this font style doesn't work in X11 either in that case.
2023-07-04 06:45:33 +02:00
Přemysl Eric Janouch b3fe85995f
Dissolve widget_redistribute()
liberty-xui has xui_hbox() and xui_vbox(),
the way we use widgets is odd.
2023-06-19 13:44:53 +02:00
Přemysl Eric Janouch 19a0a468a9
Bump liberty, move the UI to liberty-xui.c
Also bump termo.

This deduplicates code between nncmpp and hex,
and adds support for bold + italic attributes under X11.

There is still a lot of space for prettification.
Unfortunately, most of our specialized widgets are quite entangled.
2023-06-19 13:38:24 +02:00
Přemysl Eric Janouch 016469d5a8
Cleanup 2023-06-18 16:12:35 +02:00
Přemysl Eric Janouch 6bd40f3ec1
Fix potential issue with struct padding
The UI could very theoretically end up textless.
2023-06-18 13:01:14 +02:00
Přemysl Eric Janouch 0c35cc301d
Cleanup 2023-06-17 21:50:46 +02:00
Přemysl Eric Janouch d0d248e44c
Fix crash when scrolling too far up 2023-06-15 14:45:26 +02:00
Přemysl Eric Janouch ebda305e2d
Change default active tab bar attributes
It mostly just looked weird when the underline wasn't on the last row.
2023-06-15 14:38:47 +02:00
Přemysl Eric Janouch 5d5f73f22f
Don't layout during rendering 2023-06-15 12:35:43 +02:00
Přemysl Eric Janouch 4a9e621d92
Slightly clean up layouting 2023-06-15 11:07:47 +02:00
Přemysl Eric Janouch 9cd511a2e2
Implement font fallbacks
The editor doesn't support this so far, and it could be faster.
2023-06-10 21:28:49 +02:00
Přemysl Eric Janouch b11f5d0e3c
Factor out app_widget_by_id() 2023-06-09 17:44:43 +02:00
Přemysl Eric Janouch f05be01fba
Change volume adjustment key bindings
Use the much more obvious ones.
2023-05-30 15:17:04 +02:00
Přemysl Eric Janouch 14dba91dd1
Add a go-to-playing action and binding 2023-05-30 14:41:44 +02:00
Přemysl Eric Janouch dcb2829e9b
Separate the actions of aborting and quitting
The user should not be afraid of pressing Escape too many times.
2023-03-25 11:39:34 +01:00
Přemysl Eric Janouch 349c907cbf
X11: act on DestroyNotify rather than UnmapNotify
This makes the program survive i3 restarts, which cause a sequence
of: UnmapNotify, ReparentNotify, MapNotify.
2023-03-25 11:10:26 +01:00
Přemysl Eric Janouch d58856571d
Improve display of files lacking proper metadata 2023-03-07 01:53:50 +01:00
Přemysl Eric Janouch 61fac878ad
X11: fix rendering of overflowing last list items 2022-10-30 18:49:10 +01:00
Přemysl Eric Janouch e72ed71f53
X11: support italic fonts as well
The bold + italic combination isn't supported thus far,
because it seems unnecessary.
2022-09-20 11:15:20 +02:00
Přemysl Eric Janouch 28ed7a85a8
Implement lyrics lookup
There is now a generic mechanism for loading lyrics,
or any other arbitrary content related to songs.
2022-09-20 11:04:39 +02:00
Přemysl Eric Janouch b6dd940720
Implement M-u, M-l, M-c from Readline 2022-09-18 04:24:58 +02:00
Přemysl Eric Janouch 5cda848f94
Don't depend on a standalone C preprocessor
And get rid of the sed insanity.
2022-09-13 01:01:35 +02:00
Přemysl Eric Janouch b5e48c29f9
Put connecting/disconnected messages in status bar
Those are general status messages, and seem to belong to the bottom.
Partially motivated by the status bar being empty when disconnected.

And add a missing window invalidation.
2022-09-03 15:04:30 +02:00
Přemysl Eric Janouch eaa19be1c8
Fix Clang build 2022-09-03 14:39:47 +02:00
Přemysl Eric Janouch dad95ef444
X11: render partially visible list items 2022-09-03 13:23:07 +02:00
Přemysl Eric Janouch 7e74d1a80a
X11: make the scrollbar span the full height 2022-09-03 13:02:47 +02:00
Přemysl Eric Janouch 8529f24a46
Bind Tab and S-Tab to tab switching 2022-08-27 17:35:17 +02:00
Přemysl Eric Janouch 190e813d49
X11: fix Ctrl+Space 2022-08-27 17:32:12 +02:00
Přemysl Eric Janouch 9af74259d2
Add debugging facilities for input events 2022-08-27 17:20:06 +02:00
Přemysl Eric Janouch 9a996c8440
Adjust the "action unavailable" message 2022-08-25 07:45:49 +02:00
Přemysl Eric Janouch a9d4f86493
Add an action to describe items
And improve the display of messages, separating any prefix out.
2022-08-25 07:42:10 +02:00
Přemysl Eric Janouch 172ceffa9e
X11: support copying text to CLIPBOARD
Use the right mouse button.
2022-08-25 06:14:08 +02:00
Přemysl Eric Janouch 6dad74f3c9
Enable configuring spectrum analyzer FPS 2022-08-25 02:31:32 +02:00
Přemysl Eric Janouch b196ef4f08
X11: mildly optimize drawing
There is no real performance impact on modern systems.
2022-08-25 02:16:36 +02:00
Přemysl Eric Janouch d82be07807
X11: handle Shift+clicks in the list 2022-08-25 00:25:03 +02:00
Přemysl Eric Janouch 2d219f1a4b
Rework mouse event processing
X11's triple-click bug is gone, and we may pass modifier state.
2022-08-25 00:10:17 +02:00
Přemysl Eric Janouch a77d872e7f
Try to stuff more things in the status bar 2022-08-24 23:21:16 +02:00
Přemysl Eric Janouch 179e0a123b
X11: ring the bell as well, when appropriate 2022-08-24 09:35:28 +02:00
Přemysl Eric Janouch da14bdbd39
Improve help tab item choice error messages 2022-08-24 09:05:28 +02:00
Přemysl Eric Janouch 24e57872d8
Hide messages when interacting with the editor 2022-08-24 09:03:40 +02:00
Přemysl Eric Janouch a20e4c74d8
Implement mouse drags on the gauge and scrollbar 2022-08-24 08:23:54 +02:00
Přemysl Eric Janouch d33c17b888
Click to close messages
While not ideal, it is at least some way to discard them.
2022-08-24 07:41:03 +02:00
Přemysl Eric Janouch 6033f6a869
Notify when actions can't be taken 2022-08-24 07:26:47 +02:00
Přemysl Eric Janouch 88e86724c3
Always show messages to the user 2022-08-24 07:25:21 +02:00
Přemysl Eric Janouch 435485d145
X11: remark that triple clicks are mishandled 2022-08-23 12:59:59 +02:00