Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: notify about layer changes in a toast overlay #5

Closed
wants to merge 6 commits into from

Conversation

rszyma
Copy link
Owner

@rszyma rszyma commented Feb 10, 2024

Closes #3

This feature is behind a 'gtk_overlay' flag, because clean build takes like 7 minutes to compile on my machine because of the gtk stuff (compared to like 30 seconds with it disabled).

Already tested and confirmed to be working on Linux with Hyprland

Remaining tasks:

  • Test on Windows
  • Add on/off switch for this feature in config
  • Make overlay window configurable (position, size, text size)
  • Add CI to build with/without 'gtk_overlay' tag
  • Update README.md

@rszyma
Copy link
Owner Author

rszyma commented Feb 10, 2024

hmm, maybe it would be better to use gtk on linux and something native on Windows? Otherswise gtk dlls would need to be shipped on Windows along the main binary (or at least that's how it's usually done for gtk on Windows, from what I've read)

@rszyma
Copy link
Owner Author

rszyma commented Feb 10, 2024

for native ui toolkit on Windows something like https://github.com/lxn/walk looks good, even though it hasn't been update in a while, but we just need really basic functionality and quite a few window manager hints.

@rszyma
Copy link
Owner Author

rszyma commented Feb 17, 2024

Some findings after some more research on this topic:

walk is out-of-the-question as it doens't allow setting window manager hints.

I can see 3 possible implementations now: GTK, Qt or making a simplest possible library for creating these kind of notification windows for Windows using syscalls.

The problem with GTK is compilation for Windows. I've tried to set up cross-compilation for gotk3 in Docker but I was getting missing C header errors, and couldn't fix these no matter what I tried.

Using Qt instead is another alternative. But a problem with Qt is that golang qt bindings (https://github.com/therecipe/qt) are unmaintained for 4 years now, so I don't really want to use them. Also I've tried setting up compilation with this qt binding library, but it's too really too complicated. But, maybe instead of golang qt bindings, a simple c++ library could be written to handle the gui stuff.

@rszyma
Copy link
Owner Author

rszyma commented Feb 20, 2024

Closing for the same reason as #3 was closed.

@rszyma rszyma closed this Feb 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

feat: display layer change in a toast overlay
1 participant