quick commit

This commit is contained in:
2026-01-03 22:55:02 +01:00
parent ab7b3b3092
commit 0e613141da
4 changed files with 227 additions and 42 deletions

View File

@@ -23,6 +23,7 @@
class TrayIconWidget : public Button {
public:
TrayIconWidget(std::string id);
~TrayIconWidget() override;
void update(const TrayService::Item &item);
@@ -33,6 +34,7 @@ class TrayIconWidget : public Button {
Gtk::Picture picture;
Gtk::Image image;
Glib::RefPtr<Gtk::GestureClick> primaryGesture;
Glib::RefPtr<Gtk::GestureClick> middleGesture;
Glib::RefPtr<Gtk::GestureClick> secondaryGesture;
Glib::RefPtr<Gtk::PopoverMenu> menuPopover;
Glib::RefPtr<Gio::SimpleActionGroup> menuActions;
@@ -40,10 +42,12 @@ class TrayIconWidget : public Button {
bool menuPopupPending = false;
bool menuRequestInFlight = false;
bool hasRemoteMenu = false;
std::shared_ptr<bool> aliveFlag;
double pendingX = 0.0;
double pendingY = 0.0;
void on_primary_released(int n_press, double x, double y);
void on_middle_released(int n_press, double x, double y);
void on_secondary_released(int n_press, double x, double y);
void on_menu_layout_ready(std::optional<TrayService::MenuNode> layout);
void
@@ -51,6 +55,7 @@ class TrayIconWidget : public Button {
const Glib::RefPtr<Gio::Menu> &menu,
const Glib::RefPtr<Gio::SimpleActionGroup> &actions);
void on_menu_action(const Glib::VariantBase &parameter, int itemId);
bool try_get_pending_coords(int32_t &outX, int32_t &outY) const;
};
class TrayWidget : public Gtk::Box {