Summary Files Commits Branches @commit @diff @stats
path: root / badwolf.c
diff options
context:
space:
mode:
Commit8b68bc3f5747f295988edcdf7a5edc64a9417b11 (patch)
Author
 Syndamia <kamen@syndamia.com>
2022-07-17 20:09:47 +0300
Committer
 Syndamia <kamen@syndamia.com>
2022-07-17 20:09:47 +0300
Filese08b07e5898e54abc8e7428efd891e6c33d95edb /badwolf.c
goodwolf-8b68bc3f5747f295988edcdf7a5edc64a9417b11.tar
goodwolf-8b68bc3f5747f295988edcdf7a5edc64a9417b11.tar.gz
goodwolf-8b68bc3f5747f295988edcdf7a5edc64a9417b11.zip
Parent57d648e05d9d091a7d8d6f6dbfda2561c47b3a7c (diff)
badwolf: Brought back context label with the switch -cl
1 files changed, 18 insertions, 2 deletions
-rw-r--r--badwolf.c20
diff --git a/badwolf.c b/badwolf.c
index 02e9dcf..ad49144 100644
--- a/badwolf.c
+++ b/badwolf.c
@@ -28,6 +28,7 @@ GtkTreeModel *bookmarks_completion_model;
static gboolean tabs_no_label = false;
static gboolean tabs_constant = false;
+static gboolean tabs_context_label = false;
static gboolean tray_enabled = false;
static gboolean alt_useragent = false;
static int custom_favicon_size = 30;
@@ -174,7 +175,7 @@ badwolf_new_tab_box(const gchar *title, struct Client *browser)
/* flawfinder: ignore. bound checks are done */
char context_id_str[BADWOLF_CTX_SIZ] = {0, 0, 0, 0, 0, 0, 0};
- fmt_context_id(browser->context_id, context_id_str);
+ fmt_context_id(browser->context_id, context_id_str, 1);
GtkWidget *tab_box = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 0);
gtk_widget_set_name(tab_box, "browser__tabbox");
@@ -182,6 +183,14 @@ badwolf_new_tab_box(const gchar *title, struct Client *browser)
GtkWidget *close =
gtk_button_new_from_icon_name("window-close-symbolic", GTK_ICON_SIZE_LARGE_TOOLBAR);
gtk_widget_set_name(close, "browser__tabbox__close");
+ GtkWidget *context_label;
+ GtkWidget *context_label_event_box;
+ if (tabs_context_label) {
+ context_label = gtk_label_new(context_id_str);
+ gtk_widget_set_name(context_label, "browser__tabbox__context_label");
+ context_label_event_box = gtk_event_box_new();
+ gtk_container_add(GTK_CONTAINER(context_label_event_box), context_label);
+ }
GtkWidget *favicon =
gtk_image_new_from_surface(scale_favicon(webkit_web_view_get_favicon(browser->webView)));
gtk_widget_set_name(favicon, "browser__tabbox__favicon");
@@ -208,6 +217,11 @@ badwolf_new_tab_box(const gchar *title, struct Client *browser)
gtk_label_set_ellipsize(GTK_LABEL(label), BADWOLF_TAB_LABEL_ELLIPSIZE);
gtk_label_set_single_line_mode(GTK_LABEL(label), TRUE);
+ if (tabs_context_label) {
+ gtk_label_set_single_line_mode(GTK_LABEL(context_label), TRUE);
+ gtk_box_pack_start(GTK_BOX(tab_box), context_label_event_box, TRUE, TRUE, 0);
+ }
+
gtk_box_pack_start(GTK_BOX(tab_box), favicon_event_box, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(tab_box), playing_event_box, FALSE, FALSE, 0);
gtk_box_pack_start(GTK_BOX(tab_box), label_event_box, TRUE, TRUE, 0);
@@ -753,7 +767,7 @@ new_browser(struct Window *window, const gchar *target_url, struct Client *old_b
if (persistent_storage) {
char context_id_str[BADWOLF_CTX_SIZ] = {0, 0, 0, 0, 0, 0, 0};
if (separated_storage) {
- fmt_context_id(browser->context_id, context_id_str);
+ fmt_context_id(browser->context_id, context_id_str, 0);
g_mkdir_with_parents(
g_build_filename(g_get_user_config_dir(), "badwolf", context_id_str, NULL),
0755);
@@ -1247,6 +1261,8 @@ main(int argc, char *argv[])
while (argc > 1 && argv[1][0] == '-') {
if (argv[1][1] == 'n' && argv[1][2] == 'l')
tabs_no_label = TRUE;
+ else if (argv[1][1] == 'c' && argv[1][2] == 'l')
+ tabs_context_label = TRUE;
else if (argv[1][1] == 'c')
tabs_constant = TRUE;
else if (argv[1][1] == 't')