3 Commits

Author SHA1 Message Date
89f20a93e0 Fix xtext link hit-testing coords 2026-03-26 00:14:16 -06:00
f3fd7fd2b3 fixed new logo image sizes. 2026-03-25 23:45:16 -06:00
10940a37dd new logo 2026-03-25 22:53:43 -06:00
8 changed files with 69 additions and 152 deletions

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 250 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 250 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 129 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 250 KiB

After

Width:  |  Height:  |  Size: 4.8 KiB

View File

@@ -396,14 +396,10 @@ cmd_away (struct session *sess, char *tbuf, char *word[], char *word_eol[])
static int static int
cmd_back (struct session *sess, char *tbuf, char *word[], char *word_eol[]) cmd_back (struct session *sess, char *tbuf, char *word[], char *word_eol[])
{ {
if (sess->server->connected) if (sess->server->is_away)
{ {
sess->server->p_set_back (sess->server); sess->server->p_set_back (sess->server);
} }
else if (sess->server->reconnect_away)
{
sess->server->reconnect_away = FALSE;
}
else else
{ {
PrintText (sess, _("Already marked back.\n")); PrintText (sess, _("Already marked back.\n"));

View File

@@ -964,7 +964,7 @@ tray_find_away_status (void)
{ {
serv = list->data; serv = list->data;
if (serv->is_away || serv->reconnect_away || serv->last_away_reason) if (serv->is_away || serv->reconnect_away)
away++; away++;
else else
back++; back++;
@@ -1090,6 +1090,7 @@ tray_menu_populate (GtkWidget *menu)
{ {
GtkWidget *submenu; GtkWidget *submenu;
GtkWidget *item; GtkWidget *item;
int away_status;
/* ph may have an invalid context now */ /* ph may have an invalid context now */
zoitechat_set_context (ph, zoitechat_find_context (ph, NULL, NULL)); zoitechat_set_context (ph, zoitechat_find_context (ph, NULL, NULL));
@@ -1112,8 +1113,13 @@ tray_menu_populate (GtkWidget *menu)
submenu = menu; submenu = menu;
#endif #endif
away_status = tray_find_away_status ();
item = tray_make_item (submenu, _("_Away"), tray_foreach_server, "away"); item = tray_make_item (submenu, _("_Away"), tray_foreach_server, "away");
if (away_status == 1)
gtk_widget_set_sensitive (item, FALSE);
item = tray_make_item (submenu, _("_Back"), tray_foreach_server, "back"); item = tray_make_item (submenu, _("_Back"), tray_foreach_server, "back");
if (away_status == 2)
gtk_widget_set_sensitive (item, FALSE);
menu_add_plugin_items (menu, "\x5$TRAY", NULL); menu_add_plugin_items (menu, "\x5$TRAY", NULL);

View File

@@ -2311,7 +2311,16 @@ gtk_xtext_motion_notify (GtkWidget * widget, GdkEventMotion * event)
if (!window) if (!window)
return FALSE; return FALSE;
gtk_xtext_get_pointer (window, &x, &y, &mask); if (event->is_hint)
{
gtk_xtext_get_pointer (window, &x, &y, &mask);
}
else
{
x = (int)event->x;
y = (int)event->y;
mask = event->state;
}
if (xtext->moving_separator) if (xtext->moving_separator)
{ {
@@ -2487,9 +2496,12 @@ gtk_xtext_button_release (GtkWidget * widget, GdkEventButton * event)
GtkXText *xtext = GTK_XTEXT (widget); GtkXText *xtext = GTK_XTEXT (widget);
unsigned char *word; unsigned char *word;
int old; int old;
int event_x, event_y;
GtkAllocation allocation; GtkAllocation allocation;
gtk_widget_get_allocation (widget, &allocation); gtk_widget_get_allocation (widget, &allocation);
event_x = (int)event->x;
event_y = (int)event->y;
if (xtext->moving_separator) if (xtext->moving_separator)
{ {
@@ -2539,8 +2551,8 @@ gtk_xtext_button_release (GtkWidget * widget, GdkEventButton * event)
return FALSE; return FALSE;
} }
if (xtext->select_start_x == event->x && if (xtext->select_start_x == event_x &&
xtext->select_start_y == event->y && xtext->select_start_y == event_y &&
xtext->buffer->last_ent_start) xtext->buffer->last_ent_start)
{ {
gtk_xtext_unselect (xtext); gtk_xtext_unselect (xtext);
@@ -2550,7 +2562,7 @@ gtk_xtext_button_release (GtkWidget * widget, GdkEventButton * event)
if (!gtk_xtext_is_selecting (xtext)) if (!gtk_xtext_is_selecting (xtext))
{ {
word = gtk_xtext_get_word (xtext, event->x, event->y, 0, 0, 0, 0); word = gtk_xtext_get_word (xtext, event_x, event_y, 0, 0, 0, 0);
g_signal_emit (G_OBJECT (xtext), xtext_signals[WORD_CLICK], 0, word ? word : NULL, event); g_signal_emit (G_OBJECT (xtext), xtext_signals[WORD_CLICK], 0, word ? word : NULL, event);
} }
} }
@@ -2572,7 +2584,9 @@ gtk_xtext_button_press (GtkWidget * widget, GdkEventButton * event)
if (!window) if (!window)
return FALSE; return FALSE;
gtk_xtext_get_pointer (window, &x, &y, &mask); x = (int)event->x;
y = (int)event->y;
mask = event->state;
if (event->button == 3 || event->button == 2) /* right/middle click */ if (event->button == 3 || event->button == 2) /* right/middle click */
{ {