Get transparency plugin working again

Review Request #1731 — Created Sept. 9, 2022 and submitted




No need to restrict to Windows-only as it uses plain GTK APIs.

GTK4 doesn't support setting Always-on-Top programmatically, and that seems bad from the user point of view for programs to be able to do that anyway, so drop that option.

Instead of tracking a list of windows manually based on PurpleConversations, just follow along the GtkApplication for windows added/removed.

Configuration is completely untested because we have no way to open plugin prefs yet.

Enabled plugin and checked that Buddy List and Conversation Windows were made transparent. The latter also gained a slider to set the opacity, which also worked.

Opaque-during-focus also seemed to work, though there seems to be a bug with the window getting a focus enter event on hover even if the window isn't really focused.

We don't currently have a way to create a second Conversation Window, so I can't be entirely sure the window signals work, but at least window-added is checked because the plugin is loaded before the first window is created.

Summary ID
Get transparency plugin working again

Description From Last Updated

Correct me if i'm wrong, but it looks like the range widgets in each window will get out of sync …


trailing whitespace

  2. Correct me if i'm wrong, but it looks like the range widgets in each window will get out of sync once one of them is used as the other aren't updated?

    1. I think this must always have been broken? Nothing seems to connect to the prefs changing.

    2. ok that's fine. I imagine we'll eventually use a custom menu or something for this anyways, so whatever..

  3. pidgin/plugins/transparency.c (Diff revision 1)

    trailing whitespace

    1. Oops, didn't fully clean up from oldwin always being NULL.

  1. Ship It!
  2. Great work, thanks!!

Review request changed

Status: Closed (submitted)