diff --git a/etc/shared-gui.conf b/etc/shared-gui.conf index c677397..5712919 100644 --- a/etc/shared-gui.conf +++ b/etc/shared-gui.conf @@ -12,6 +12,8 @@ icons.scaling = 1 # gemini browser +gemini.image.inline.relative.scaling = 1/3 + gemini.favicon = "🌍" gemini.main-window.select.background = #f2d8f4 diff --git a/src/gui/client/client-configuration.lisp b/src/gui/client/client-configuration.lisp index 59edb61..271cae1 100644 --- a/src/gui/client/client-configuration.lisp +++ b/src/gui/client/client-configuration.lisp @@ -58,6 +58,9 @@ decrease reset refresh + image + inline + relative stream-frame) (defun load-config-file (&optional (virtual-filepath +client-conf-filename+) @@ -465,3 +468,14 @@ :configuration-tree *client-configuration*) +key-stream-frame+ +key-show+) + +(swconf:gen-simple-access (inline-scaling-ratio + :transform-value-fn (lambda (a) + (or (num-utils:safe-parse-number a) + 1/3)) + :configuration-tree *client-configuration*) + swconf:+key-gemini+ + +key-image+ + +key-inline+ + +key-relative+ + +key-scaling+) diff --git a/src/gui/client/main-window.lisp b/src/gui/client/main-window.lisp index 8c8706c..3e9f202 100644 --- a/src/gui/client/main-window.lisp +++ b/src/gui/client/main-window.lisp @@ -434,7 +434,8 @@ (gemtext-widget-width (gemtext-widget-pixel-width main-window)) (pixmap-w (nodgui.pixmap:width pixmap)) (ratio (/ 1 (/ pixmap-w - (* gemtext-widget-width 1/3))))) + (* gemtext-widget-width + (client-configuration:config-inline-scaling-ratio)))))) (if (< ratio 1.0) (nodgui.pixmap:scale-bilinear pixmap ratio ratio) pixmap))) diff --git a/src/package.lisp b/src/package.lisp index 59dbec0..ba74bb5 100644 --- a/src/package.lisp +++ b/src/package.lisp @@ -3322,6 +3322,7 @@ :config-keybinding-bookmark-show :main-window-select-colors :emphasize-wrapped-asterisk-p + :config-inline-scaling-ratio :config-stream-frame-show-p)) (defpackage :client-os-utils