mirror of
https://github.com/ZoiteChat/zoitechat.git
synced 2026-04-01 10:10:18 +00:00
Compare commits
2 Commits
b32f6522ac
...
7c24c1137d
| Author | SHA1 | Date | |
|---|---|---|---|
| 7c24c1137d | |||
| 7138a8f397 |
@@ -307,6 +307,34 @@ mg_set_label_alignment_start (GtkWidget *widget)
|
||||
gtk_widget_set_valign (widget, GTK_ALIGN_CENTER);
|
||||
}
|
||||
|
||||
static void
|
||||
mg_apply_compact_mode_css (GtkWidget *widget)
|
||||
{
|
||||
GtkStyleContext *context;
|
||||
GtkCssProvider *provider;
|
||||
|
||||
if (!widget)
|
||||
return;
|
||||
|
||||
context = gtk_widget_get_style_context (widget);
|
||||
if (!context)
|
||||
return;
|
||||
|
||||
provider = g_object_get_data (G_OBJECT (widget), "mg-mode-css-provider");
|
||||
if (!provider)
|
||||
{
|
||||
provider = gtk_css_provider_new ();
|
||||
g_object_set_data_full (G_OBJECT (widget), "mg-mode-css-provider", provider, g_object_unref);
|
||||
}
|
||||
|
||||
gtk_css_provider_load_from_data (provider,
|
||||
".zoitechat-mode-control { min-height: 11px; padding-top: 0; padding-bottom: 0; }"
|
||||
".zoitechat-mode-control label { padding-top: 0; padding-bottom: 0; }",
|
||||
-1, NULL);
|
||||
gtk_style_context_add_class (context, "zoitechat-mode-control");
|
||||
theme_css_apply_widget_provider (widget, GTK_STYLE_PROVIDER (provider));
|
||||
}
|
||||
|
||||
static GtkWidget *
|
||||
mg_box_new (GtkOrientation orientation, gboolean homogeneous, gint spacing)
|
||||
{
|
||||
@@ -2716,8 +2744,10 @@ mg_create_flagbutton (char *tip, GtkWidget *box, char *face)
|
||||
gtk_label_set_markup (GTK_LABEL(lbl), label_markup);
|
||||
|
||||
btn = gtk_toggle_button_new ();
|
||||
gtk_widget_set_size_request (btn, -1, 0);
|
||||
gtk_widget_set_size_request (btn, -1, 11);
|
||||
gtk_widget_set_tooltip_text (btn, tip);
|
||||
gtk_button_set_relief (GTK_BUTTON (btn), GTK_RELIEF_NONE);
|
||||
mg_apply_compact_mode_css (btn);
|
||||
gtk_container_add (GTK_CONTAINER(btn), lbl);
|
||||
|
||||
gtk_box_pack_start (GTK_BOX (box), btn, 0, 0, 0);
|
||||
@@ -2801,9 +2831,10 @@ mg_create_chanmodebuttons (session_gui *gui, GtkWidget *box)
|
||||
gui->key_entry = gtk_entry_new ();
|
||||
gtk_widget_set_name (gui->key_entry, "zoitechat-inputbox");
|
||||
gtk_entry_set_max_length (GTK_ENTRY (gui->key_entry), 23);
|
||||
gtk_widget_set_size_request (gui->key_entry, 115, -1);
|
||||
gtk_widget_set_size_request (gui->key_entry, 115, 11);
|
||||
gtk_box_pack_start (GTK_BOX (box), gui->key_entry, 0, 0, 0);
|
||||
mg_apply_emoji_fallback_widget (gui->key_entry);
|
||||
mg_apply_compact_mode_css (gui->key_entry);
|
||||
g_signal_connect (G_OBJECT (gui->key_entry), "activate",
|
||||
G_CALLBACK (mg_key_entry_cb), NULL);
|
||||
g_signal_connect (G_OBJECT (gui->key_entry), "key-press-event",
|
||||
@@ -2816,9 +2847,10 @@ mg_create_chanmodebuttons (session_gui *gui, GtkWidget *box)
|
||||
gui->limit_entry = gtk_entry_new ();
|
||||
gtk_widget_set_name (gui->limit_entry, "zoitechat-inputbox");
|
||||
gtk_entry_set_max_length (GTK_ENTRY (gui->limit_entry), 10);
|
||||
gtk_widget_set_size_request (gui->limit_entry, 30, -1);
|
||||
gtk_widget_set_size_request (gui->limit_entry, 30, 11);
|
||||
gtk_box_pack_start (GTK_BOX (box), gui->limit_entry, 0, 0, 0);
|
||||
mg_apply_emoji_fallback_widget (gui->limit_entry);
|
||||
mg_apply_compact_mode_css (gui->limit_entry);
|
||||
g_signal_connect (G_OBJECT (gui->limit_entry), "activate",
|
||||
G_CALLBACK (mg_limit_entry_cb), NULL);
|
||||
g_signal_connect (G_OBJECT (gui->limit_entry), "key-press-event",
|
||||
@@ -2904,11 +2936,14 @@ mg_create_dialogbuttons (GtkWidget *box)
|
||||
static void
|
||||
mg_create_topicbar (session *sess, GtkWidget *box)
|
||||
{
|
||||
GtkWidget *hbox, *topic, *bbox;
|
||||
session_gui *gui = sess->gui;
|
||||
GtkWidget *vbox, *hbox, *mode_hbox, *topic, *bbox;
|
||||
session_gui *gui = sess->gui;
|
||||
|
||||
gui->topic_bar = hbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (box), hbox, 0, 0, 0);
|
||||
gui->topic_bar = vbox = mg_box_new (GTK_ORIENTATION_VERTICAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (box), vbox, 0, 0, 0);
|
||||
|
||||
hbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), hbox, 0, 0, 0);
|
||||
|
||||
if (!gui->is_tab)
|
||||
sess->res->tab = NULL;
|
||||
@@ -2931,13 +2966,16 @@ mg_create_topicbar (session *sess, GtkWidget *box)
|
||||
g_signal_connect (G_OBJECT (topic), "leave-notify-event",
|
||||
G_CALLBACK (mg_topic_leave_cb), NULL);
|
||||
|
||||
gui->topicbutton_box = bbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), bbox, 0, 0, 0);
|
||||
mg_create_chanmodebuttons (gui, bbox);
|
||||
gui->dialogbutton_box = bbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), bbox, 0, 0, 0);
|
||||
mg_create_dialogbuttons (bbox);
|
||||
|
||||
gui->dialogbutton_box = bbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (hbox), bbox, 0, 0, 0);
|
||||
mg_create_dialogbuttons (bbox);
|
||||
mode_hbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_start (GTK_BOX (vbox), mode_hbox, 0, 0, 0);
|
||||
|
||||
gui->topicbutton_box = bbox = mg_box_new (GTK_ORIENTATION_HORIZONTAL, FALSE, 0);
|
||||
gtk_box_pack_end (GTK_BOX (mode_hbox), bbox, 0, 0, 0);
|
||||
mg_create_chanmodebuttons (gui, bbox);
|
||||
}
|
||||
|
||||
/* check if a word is clickable */
|
||||
@@ -3290,19 +3328,16 @@ mg_theme_window_destroy_cb (GtkWidget *widget, gpointer userdata)
|
||||
static void
|
||||
mg_create_userlist (session_gui *gui, GtkWidget *box)
|
||||
{
|
||||
GtkWidget *frame, *ulist, *vbox;
|
||||
GtkWidget *ulist, *vbox;
|
||||
|
||||
vbox = mg_box_new (GTK_ORIENTATION_VERTICAL, FALSE, 1);
|
||||
gtk_box_pack_start (GTK_BOX (box), vbox, TRUE, TRUE, 0);
|
||||
|
||||
frame = gtk_frame_new (NULL);
|
||||
if (prefs.hex_gui_ulist_count)
|
||||
gtk_box_pack_start (GTK_BOX (vbox), frame, 0, 0, GUI_SPACING);
|
||||
|
||||
gui->namelistinfo = gtk_label_new (NULL);
|
||||
gtk_label_set_xalign (GTK_LABEL (gui->namelistinfo), 0.0f);
|
||||
gtk_widget_set_halign (gui->namelistinfo, GTK_ALIGN_START);
|
||||
gtk_container_add (GTK_CONTAINER (frame), gui->namelistinfo);
|
||||
if (prefs.hex_gui_ulist_count)
|
||||
gtk_box_pack_start (GTK_BOX (vbox), gui->namelistinfo, 0, 0, 0);
|
||||
|
||||
gui->user_tree = ulist = userlist_create (vbox);
|
||||
|
||||
|
||||
@@ -886,7 +886,7 @@ userlist_create (GtkWidget *box)
|
||||
treeview = gtk_tree_view_new ();
|
||||
gtk_widget_set_name (treeview, "zoitechat-userlist");
|
||||
gtk_widget_set_can_focus (treeview, TRUE);
|
||||
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), TRUE);
|
||||
gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (treeview), FALSE);
|
||||
gtk_tree_selection_set_mode (gtk_tree_view_get_selection
|
||||
(GTK_TREE_VIEW (treeview)),
|
||||
GTK_SELECTION_MULTIPLE);
|
||||
|
||||
Reference in New Issue
Block a user