feat: add screenshot functionality and UI components#707
feat: add screenshot functionality and UI components#707Gitkubikon wants to merge 16 commits intocaelestia-dots:mainfrom
Conversation
|
Along with the screenrecorder it does feel like its getting pretty out there to taking up too much space, I wonder if tabs or some other way to combine more with the recorder would make sense, I do like having quick access to the screenshots I take even if I just region cap with a keypress. But maybe a shared capture with a mode switch would be the longterm? Edit: Did use your PR to give that a spin, not the cleanest layout maybe, but I feel like it works well! recording_20250928_00-07-07.mp4 |
|
Thanks for taking the time and reviewing it! Yeah, I haven't thought about making it tabs (honestly I just really needed to take some screenshots and ended up implementing it, even if not in the cleanest way xD), but I think that really would be the best long term solution, especially as the quick access panel get's more features, stuff wich can be efficiently combined, should be efficiently combined |
Based on gitkubikon's Media card implementation: - Tab-based interface with screenshot/recording mode switching - Compact header design without verbose descriptions - Contextual SplitButton that adapts to active tab - Unified MediaList component for both screenshots and recordings - Space-efficient design with better information density
|
Oh your approach to the unified capture was much cleaner than mine, was going to PR your branch before realizing you did it better anyway already haha |
|
Oh, thanks! :D I think that's probably the way to go. Although, for the life of me, I couldn't figure out how to prevent the "No Data" Placeholder from overflowing into the bottom when animating the list height ... recording_20250928_13-14-26.mp4EDIT: I also added an invert configuration to the OSD (wich would be natural on Touchpads) |
|
OCR is a very intriguing Idea, wich I think deserves it's own Issue. I'm thinking of something like Windows Click-To-Do (I think that's how it's called), wich would be overkill and take a lot of effort to implement neatly, but we can start by using the current implementation and simply adding an OCR post-processing step @PixelKhaos |
- Fix placeholder overflow by using viewport.animatedHeight instead of pseudoContainer.height - Reduce Y animation duration for big variant to 60% for smoother tracking - Remove Y animation for small variant to eliminate stagger during collapse
Oh yeah, I made a PR on your branch for that, sorted it as far as I can tell :)
Yeah I was contemplating whether a separate list since you may want each extracted bit of text as copyable, but maybe a "mixed media" type list works there still, as long as OCR is clarified I guess? |
Fix: MediaList overflow & animation
|
Great! Merged it :) |
…d Media components
recording_20250929_13-44-55.mp4Okay, I think it's pretty polished now :) |
…ions in AreaPicker and Picker components fix: update saveItem function to handle scaling correctly in CUtils refactor: adjust Recorder to support external start/stop detection and maintain state chore: change default image viewer in GeneralConfig
|
So it works pretty solid right now, for the exception, that it doesn't call the caelestia cli anymore when taking areated screenshots and recordings, wich then doesn't dispatch a notification (fullscreen recordings still do that) |
…ng and add timestamp pattern matching
…components for improved clarity and functionality
…d coordinate handling and external command detection
… Recorder and Picker components
|
Okay phew, I think I'm quite done with this, it should be pretty solid now @PixelKhaos in combination with caelestia-dots/cli#56 |
I assume these latest update(s) depend on the CLI PR? |
Yes exactly, starting from the mention of the CLI |
|
This PR looks good. I'll merge it with my fork. Thank you for this! |
No description provided.