aboutsummaryrefslogtreecommitdiff
path: root/config.def.h
diff options
context:
space:
mode:
authorArslaan Pathan <[email protected]>2026-03-28 09:33:50 +1300
committerArslaan Pathan <[email protected]>2026-03-28 09:33:50 +1300
commit75d932dcdb70be5cc7c2756d7f042ff1df594cb1 (patch)
treef065e9c74e684a512b3079c2b41297f1d06efa94 /config.def.h
parenta1a34c7fb00aba61666b1cec9adac901f82673df (diff)
downloadcinnamon-browser-75d932dcdb70be5cc7c2756d7f042ff1df594cb1.tar.xz
cinnamon-browser-75d932dcdb70be5cc7c2756d7f042ff1df594cb1.zip
Some stuff (i have no idea what to put on the commit message)
Diffstat (limited to 'config.def.h')
-rw-r--r--config.def.h23
1 files changed, 17 insertions, 6 deletions
diff --git a/config.def.h b/config.def.h
index 6bda445..d7af70e 100644
--- a/config.def.h
+++ b/config.def.h
@@ -4,21 +4,27 @@
#ifndef CONFIG_H
#define CONFIG_H
+#include <webkit2/webkit2.h>
+#include <gtk/gtk.h>
+
/* forward declarations from main.c */
extern int mode;
/* Cinnamon is declared in main.c before including config.h. Yes, I know this code is held together by hopes and dreams, but good enough. */
extern void tabopen(Cinnamon* cinnamon);
+extern void tabclose(Cinnamon* cinnamon);
+
+/* guard to ensure config.h isnt empty or something
+ * if not defined, main will exit with code 1 */
+#define CINNAMON_ENABLED
/* default window width/height, can be resized after. */
#define WINDOW_WIDTH 1024
#define WINDOW_HEIGHT 768
#define HOMEPAGE "https://start.duckduckgo.com"
-/* this value is required for the browser to launch
- if its not there the browser will exit with code 1
- do not ask any questions */
-#define ObamaPrism
/* if a keybind is unbound, still don't send when not in insert mode */
#define NO_SEND_UNBOUND_KEYBINDS
+/* if the last tab is closed, don't quit, just make a fresh one */
+#define NO_QUIT_ON_CLOSE_LAST_TAB
/* Keybind definitions */
static void _kbd_insmode(Cinnamon* cinnamon, void* arg) {
@@ -45,16 +51,21 @@ static void _kbd_scroll(Cinnamon* cinnamon, void* arg) {
js = "alert(\"an unexpected error occurred in the scroll handler\");";
}
- webkit_web_view_evaluate_javascript(WEBKIT_WEB_VIEW(webview), js, -1, NULL, NULL, NULL, NULL, NULL);
+ /* some distros ship older versions of webkit2gtk-4.1, use the deprecated run_javascript api to ensure compatibility */
+ webkit_web_view_run_javascript(WEBKIT_WEB_VIEW(webview), js, NULL, NULL, NULL);
}
static void _kbd_tabsel(Cinnamon* cinnamon, void* arg) {
gtk_notebook_set_current_page(GTK_NOTEBOOK(cinnamon->notebook), (int)(intptr_t)arg);
}
+static void _kbd_tabclose(Cinnamon* cinnamon, void* arg) {
+ tabclose(cinnamon);
+}
+
static const Keybind keybinds[] = {
{ "<S-o>", &_kbd_tabopen, NULL },
- // { "d", ":tab_close" },
+ { "d", &_kbd_tabclose, NULL },
// { "o", ":commandline_show \":open\"" },
{ "i", &_kbd_insmode, NULL },
{ "j", &_kbd_scroll, "down" },