From d318f21e2de12023443919e29648aac24ead100f Mon Sep 17 00:00:00 2001 From: Batmancpu <261216860+Batmancpu@users.noreply.github.com> Date: Mon, 5 Oct 2026 06:52:40 +0000 Subject: [PATCH 1/6] Add Liquid Glass and Liquid Glass Indian themes Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- .../org.florisboard.themes/extension.json | 12 + .../stylesheets/liquid_glass.json | 541 ++++++++++++++++++ .../stylesheets/liquid_glass_indian.json | 541 ++++++++++++++++++ 3 files changed, 1094 insertions(+) create mode 100644 app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json create mode 100644 app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json diff --git a/app/src/main/assets/ime/theme/org.florisboard.themes/extension.json b/app/src/main/assets/ime/theme/org.florisboard.themes/extension.json index 5a6130f0c..eba2971f9 100644 --- a/app/src/main/assets/ime/theme/org.florisboard.themes/extension.json +++ b/app/src/main/assets/ime/theme/org.florisboard.themes/extension.json @@ -12,6 +12,18 @@ "license": "apache-2.0" }, "themes": [ + { + "id": "liquid_glass", + "label": "Liquid Glass", + "authors": [ "Mangoloads" ], + "isNight": true + }, + { + "id": "liquid_glass_indian", + "label": "Liquid Glass Indian", + "authors": [ "Mangoloads" ], + "isNight": true + }, { "id": "dictate_glass", "label": "Dictate Glass", diff --git a/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json new file mode 100644 index 000000000..6b4ada172 --- /dev/null +++ b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json @@ -0,0 +1,541 @@ +{ + "$schema": "https://schemas.florisboard.org/snygg/v2/stylesheet", + "@defines": { + "--primary": "#30b7e6", + "--primary-variant": "#1c7eab", + "--secondary": "#f2994a", + "--secondary-variant": "#c9752c", + + "--background": "rgba(10, 14, 20, 0.15)", + "--background-variant": "rgba(14, 19, 27, 0.38)", + "--surface": "rgba(58, 70, 88, 0.94)", + "--surface-variant": "rgba(96, 112, 136, 0.96)", + + "--sheet": "rgba(20, 26, 35, 0.94)", + "--popup-surface": "rgba(62, 74, 92, 0.94)", + "--focused-popup-surface": "rgba(124, 142, 166, 0.96)", + + "--rim": "rgba(228, 240, 252, 0.26)", + + "--drag-marker": "#ff6b6b", + "--spacer-color": "rgba(233, 239, 246, 0.20)", + + "--one-hand-background": "rgba(13, 20, 29, 0.80)", + "--one-hand-foreground": "#93a6b9", + + "--incognito-icon-color": "#e9eff611", + + "--on-primary": "#f0f0f0", + "--on-background": "#e9eff6", + "--on-background-disabled": "rgba(233, 239, 246, 0.30)", + "--on-surface": "#f5f9fd", + "--on-surface-variant": "#93a6b9", + + "--shape": "rounded-corner(20dp, 20dp, 20dp, 20dp)", + "--shape-variant": "rounded-corner(24dp, 24dp, 24dp, 24dp)", + "--shape-chip": "rounded-corner(50%, 50%, 50%, 50%)" + }, + + "window": { + "background": "var(--background)", + "foreground": "var(--on-background)" + }, + "window[windowmode=`floating`]": { + "shadow-elevation": "18dp", + "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", + "background-blur": "10dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "window-move-handle[windowmode=`fixed`]": { + "background": "var(--surface)", + "foreground": "var(--primary)", + "font-size": "24sp", + "margin": "16dp 0dp", + "padding": "8dp", + "shape": "circle()" + }, + "window-resize-handle": { + "background": "var(--primary)" + }, + "window-resize-action[windowmode=`fixed`]": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "font-size": "24sp", + "padding": "8dp", + "shape": "circle()" + }, + "window-resize-action[windowmode=`floating`]": { + "background": "var(--surface)", + "foreground": "var(--primary)", + "shape": "circle()" + }, + "floating-dock-to-fixed-indicator": { + "background": "var(--primary)" + }, + + "key": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "22sp", + "shape": "var(--shape)", + "text-max-lines": "1" + }, + "key:pressed": { + "background": "var(--surface-variant)", + "foreground": "var(--on-surface)" + }, + "key[code=10]": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "background-sheen": "18% 14%" + }, + "key[code=10]:pressed": { + "background": "var(--primary-variant)", + "foreground": "var(--on-primary)" + }, + "key[code=32]": { + "background": "var(--surface)", + "foreground": "var(--on-surface-variant)", + "font-size": "12sp", + "text-overflow": "ellipsis" + }, + "key[code=-201,-202,-203]": { + "font-size": "18sp" + }, + "key[code=-204,-205]": { + "font-size": "12sp" + }, + "key[code=-205]": { + "text-max-lines": "2" + }, + "key[code=-11][shiftstate=`caps_lock`]": { + "foreground": "var(--primary)" + }, + "key-hint": { + "background": "transparent", + "foreground": "var(--on-surface-variant)", + "font-family": "monospace", + "font-size": "12sp", + "padding": "0dp 1dp 1dp 0dp", + "text-max-lines": "1" + }, + "key-popup-box": { + "background": "var(--popup-surface)", + "foreground": "var(--on-surface)", + "font-size": "22sp", + "shape": "var(--shape)", + "shadow-elevation": "6dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "key-popup-element:focus": { + "background": "var(--focused-popup-surface)", + "shape": "var(--shape)" + }, + "key-popup-element[code=-255]": { + "font-size": "18sp", + "text-max-lines": "1" + }, + "key-popup-extended-indicator": { + "font-size": "16sp" + }, + + "smartbar": { + "font-size": "18sp" + }, + "smartbar-shared-actions-toggle": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "margin": "6dp", + "shape": "circle()" + }, + "smartbar-extended-actions-toggle": { + "background": "transparent", + "foreground": "var(--on-surface-variant)", + "margin": "6dp", + "shape": "circle()" + }, + "smartbar-action-key[code=-214]": { + "background": "var(--primary)", + "shape": "circle()", + "margin": "4dp", + "background-sheen": "18% 14%" + }, + "smartbar-action-key-icon[code=-214]": { + "foreground": "var(--on-primary)", + "font-size": "20sp" + }, + "smartbar-action-key": { + "background": "transparent", + "foreground": "var(--on-background)", + "shape": "var(--shape)" + }, + "smartbar-action-key:disabled": { + "foreground": "var(--on-background-disabled)" + }, + + "smartbar-actions-overflow": { + "margin": "4dp" + }, + "smartbar-actions-overflow-customize-button": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "font-size": "14sp", + "margin": "0dp 8dp 0dp 0dp", + "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", + "background-sheen": "18% 14%" + }, + "smartbar-action-tile": { + "background": "var(--surface)", + "foreground": "var(--on-background)", + "font-size": "14sp", + "margin": "4dp", + "padding": "4dp", + "shape": "rounded-corner(20%, 20%, 20%, 20%)", + "text-align": "center", + "text-max-lines": "2", + "text-overflow": "ellipsis" + }, + "smartbar-action-tile:disabled": { + "foreground": "var(--on-background-disabled)" + }, + "smartbar-action-tile-icon": { + "font-size": "24sp", + "margin": "0dp 0dp 0dp 8dp" + }, + + "smartbar-actions-editor": { + "background": "var(--sheet)", + "foreground": "var(--on-background)", + "shape": "rounded-corner(24dp, 24dp, 0dp, 0dp)" + }, + "smartbar-actions-editor-header": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "16sp", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-actions-editor-header-button": { + "margin": "4dp", + "shape": "circle()" + }, + "smartbar-actions-editor-subheader": { + "foreground": "var(--primary)", + "font-size": "16sp", + "font-weight": "bold", + "padding": "12dp 16dp 12dp 8dp", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-actions-editor-tile-grid": { + "margin": "4dp 0dp" + }, + "smartbar-actions-editor-tile": { + "margin": "4dp", + "padding": "8dp", + "text-align": "center", + "text-max-lines": "2", + "text-overflow": "ellipsis" + }, + "smartbar-actions-editor-tile[code=-999]": { + "foreground": "var(--on-background-disabled)" + }, + "smartbar-actions-editor-tile[code=-991]": { + "foreground": "var(--drag-marker)" + }, + + "smartbar-candidate-word": { + "background": "transparent", + "foreground": "var(--on-background)", + "font-size": "14sp", + "margin": "4dp", + "padding": "4dp 0dp", + "shape": "rectangle()", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-candidate-word:pressed": { + "background": "var(--surface)", + "foreground": "var(--on-surface)" + }, + "smartbar-candidate-word[auto-commit=1]": { + "foreground": "var(--primary)" + }, + "smartbar-candidate-word[auto-commit=1]:pressed": { + "background": "var(--surface)", + "foreground": "var(--primary)" + }, + "smartbar-candidate-word-secondary-text": { + "font-size": "8sp", + "margin": "0dp 2dp 0dp 0dp" + }, + "smartbar-candidate-clip": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "14sp", + "margin": "4dp 7dp", + "padding": "8dp 0dp", + "shape": "var(--shape-chip)", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-candidate-clip:pressed": { + "background": "var(--surface-variant)", + "foreground": "var(--on-surface)" + }, + "smartbar-candidate-clip-icon": { + "margin": "0dp 0dp 4dp 0dp" + }, + "smartbar-candidate-clip-dismiss": { + "background": "var(--background)", + "foreground": "var(--on-background)", + "font-size": "14sp", + "margin": "6dp 3dp 0dp 3dp", + "shape": "circle()" + }, + "smartbar-candidate-spacer": { + "foreground": "var(--spacer-color)" + }, + + "clipboard-header": { + "foreground": "var(--on-background)", + "font-size": "16sp" + }, + "clipboard-header-button": { + "margin": "4dp", + "shape": "circle()" + }, + "clipboard-header-button:disabled": { + "foreground": "var(--on-background-disabled)" + }, + "clipboard-header-text": { + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "clipboard-subheader": { + "font-size": "14sp", + "margin": "6dp 10dp 6dp 6dp" + }, + "clipboard-content": { + "padding": "10dp 0dp", + "background": "var(--background-variant)" + }, + "clipboard-filter-row": { + "background": "var(--background-variant)", + "foreground": "var(--on-background)", + "padding": "0dp 0dp 4dp 0dp", + "shape": "var(--shape-variant)" + }, + "clipboard-filter-chip": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "margin": "4dp 4dp 0dp 4dp", + "padding": "8dp 4dp", + "shape": "var(--shape-chip)" + }, + "clipboard-filter-chip[state=`active`]": { + "background": "var(--primary)", + "foreground": "var(--on-primary)" + }, + "clipboard-filter-chip-text": { + "margin": "4dp 0dp 0dp 0dp" + }, + "clipboard-grid": { + "shape": "var(--shape-variant)" + }, + "clipboard-item": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "13sp", + "margin": "4dp", + "shape": "var(--shape-variant)", + "text-max-lines": "10", + "text-overflow": "ellipsis" + }, + "clipboard-item[type=`text`]": { + "padding": "12dp 8dp" + }, + "clipboard-item-description": { + "font-size": "12sp", + "font-style": "italic" + }, + "clipboard-item-popup": { + "background": "var(--sheet)", + "foreground": "var(--on-surface)", + "font-size": "14sp", + "margin": "4dp", + "shape": "var(--shape-variant)", + "shadow-elevation": "12dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "clipboard-item-popup[type=`text`]": { + "padding": "12dp 8dp" + }, + "clipboard-item-timestamp": { + "font-size": "11sp", + "padding": "16dp 8dp" + }, + "clipboard-item-actions": { + "background": "var(--sheet)", + "foreground": "var(--on-surface)", + "margin": "4dp", + "shape": "var(--shape-variant)", + "shadow-elevation": "12dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "clipboard-item-action": { + "font-size": "16sp", + "padding": "12dp" + }, + "clipboard-item-action-text": { + "margin": "4dp 0dp 0dp 0dp" + }, + "clipboard-clear-all-dialog": { + "background": "var(--sheet)", + "foreground": "var(--on-surface)", + "shape": "var(--shape-variant)", + "shadow-elevation": "12dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "clipboard-clear-all-dialog-message": { + "padding": "16dp" + }, + "clipboard-clear-all-dialog-buttons": { + "padding": "4dp" + }, + "clipboard-clear-all-dialog-button": { + "background": "transparent", + "foreground": "var(--on-surface)", + "shape": "var(--shape-variant)" + }, + "clipboard-history-disabled-title": { + "font-weight": "bold" + }, + "clipboard-history-disabled-message": { + "padding": "0dp 4dp 0dp 8dp" + }, + "clipboard-history-disabled-button": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "shape": "rounded-corner(24dp,24dp,24dp,24dp)", + "background-sheen": "18% 14%" + }, + "clipboard-history-locked-title": { + "font-weight": "bold", + "text-align": "center" + }, + "clipboard-history-locked-message": { + "padding": "0dp 4dp 0dp 0dp", + "text-align": "center" + }, + + "extracted-landscape-input-layout": { + "background": "var(--background)" + }, + "extracted-landscape-input-field": { + "background": "transparent", + "foreground": "var(--on-background)", + "font-size": "16sp", + "shape": "rounded-corner(12dp, 12dp, 12dp, 12dp)" + }, + "extracted-landscape-input-action": { + "background": "var(--primary)", + "foreground": "var(--on-surface)", + "shape": "rounded-corner(4dp, 4dp, 4dp, 4dp)" + }, + + "glide-trail": { + "foreground": "var(--primary)" + }, + + "incognito-mode-indicator": { + "foreground": "var(--incognito-icon-color)" + }, + + "inline-autofill-chip": { + "background": "var(--surface)", + "foreground": "var(--on-surface)" + }, + + "media": { + "background": "var(--background-variant)", + "foreground": "var(--on-background)" + }, + "media-emoji-subheader": { + "font-weight": "bold", + "margin": "4dp" + }, + "media-emoji-key": { + "background": "transparent", + "foreground": "var(--on-background)", + "font-size": "22sp", + "shape": "var(--shape)" + }, + "media-emoji-key:pressed": { + "background": "var(--surface)", + "foreground": "var(--on-surface)" + }, + "media-emoji-key-popup-box": { + "background": "var(--popup-surface)", + "foreground": "var(--on-surface)", + "font-size": "22sp", + "shape": "var(--shape)", + "shadow-elevation": "6dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "media-emoji-key-popup-element:focus": { + "background": "var(--focused-popup-surface)", + "shape": "var(--shape)" + }, + "media-emoji-tab": { + "foreground": "var(--on-background)" + }, + "media-emoji-tab:focus": { + "foreground": "var(--primary)" + }, + "media-bottom-row-button": { + "padding": "16dp 0dp", + "shape": "var(--shape)" + }, + "media-emoji-key-popup-extended-indicator": { + "foreground": "inherit" + }, + + "one-handed-panel": { + "background": "var(--one-hand-background)", + "foreground": "var(--one-hand-foreground)" + }, + "one-handed-panel-button": { + "padding": "8dp", + "font-size": "24sp", + "background": "var(--surface)", + "shape": "circle()" + }, + + "subtype-panel": { + "background": "var(--sheet)", + "foreground": "var(--on-background)", + "shape": "rounded-corner(24dp, 24dp, 0dp, 0dp)" + }, + "subtype-panel-header": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "18sp", + "padding": "12dp", + "text-align": "center", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "subtype-panel-list-item": { + "font-size": "16sp", + "padding": "16dp" + }, + "subtype-panel-list-item-icon-leading": { + "font-size": "24sp", + "padding": "0dp 0dp 16dp 0dp" + }, + "subtype-panel-list-item-text": { + "text-max-lines": "1", + "text-overflow": "ellipsis" + } +} diff --git a/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json new file mode 100644 index 000000000..ab4643e03 --- /dev/null +++ b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json @@ -0,0 +1,541 @@ +{ + "$schema": "https://schemas.florisboard.org/snygg/v2/stylesheet", + "@defines": { + "--primary": "#30b7e6", + "--primary-variant": "#1c7eab", + "--secondary": "#f2994a", + "--secondary-variant": "#c9752c", + + "--background": "rgba(255, 153, 51, 0.20)", + "--background-variant": "rgba(255, 153, 51, 0.40)", + "--surface": "rgba(19, 136, 8, 0.85)", + "--surface-variant": "rgba(0, 0, 128, 0.85)", + + "--sheet": "rgba(20, 26, 35, 0.94)", + "--popup-surface": "rgba(62, 74, 92, 0.94)", + "--focused-popup-surface": "rgba(124, 142, 166, 0.96)", + + "--rim": "rgba(228, 240, 252, 0.26)", + + "--drag-marker": "#ff6b6b", + "--spacer-color": "rgba(233, 239, 246, 0.20)", + + "--one-hand-background": "rgba(13, 20, 29, 0.80)", + "--one-hand-foreground": "#93a6b9", + + "--incognito-icon-color": "#e9eff611", + + "--on-primary": "#f0f0f0", + "--on-background": "#e9eff6", + "--on-background-disabled": "rgba(233, 239, 246, 0.30)", + "--on-surface": "#f5f9fd", + "--on-surface-variant": "#93a6b9", + + "--shape": "rounded-corner(20dp, 20dp, 20dp, 20dp)", + "--shape-variant": "rounded-corner(24dp, 24dp, 24dp, 24dp)", + "--shape-chip": "rounded-corner(50%, 50%, 50%, 50%)" + }, + + "window": { + "background": "var(--background)", + "foreground": "var(--on-background)" + }, + "window[windowmode=`floating`]": { + "shadow-elevation": "18dp", + "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", + "background-blur": "10dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "window-move-handle[windowmode=`fixed`]": { + "background": "var(--surface)", + "foreground": "var(--primary)", + "font-size": "24sp", + "margin": "16dp 0dp", + "padding": "8dp", + "shape": "circle()" + }, + "window-resize-handle": { + "background": "var(--primary)" + }, + "window-resize-action[windowmode=`fixed`]": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "font-size": "24sp", + "padding": "8dp", + "shape": "circle()" + }, + "window-resize-action[windowmode=`floating`]": { + "background": "var(--surface)", + "foreground": "var(--primary)", + "shape": "circle()" + }, + "floating-dock-to-fixed-indicator": { + "background": "var(--primary)" + }, + + "key": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "22sp", + "shape": "var(--shape)", + "text-max-lines": "1" + }, + "key:pressed": { + "background": "var(--surface-variant)", + "foreground": "var(--on-surface)" + }, + "key[code=10]": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "background-sheen": "18% 14%" + }, + "key[code=10]:pressed": { + "background": "var(--primary-variant)", + "foreground": "var(--on-primary)" + }, + "key[code=32]": { + "background": "var(--surface)", + "foreground": "var(--on-surface-variant)", + "font-size": "12sp", + "text-overflow": "ellipsis" + }, + "key[code=-201,-202,-203]": { + "font-size": "18sp" + }, + "key[code=-204,-205]": { + "font-size": "12sp" + }, + "key[code=-205]": { + "text-max-lines": "2" + }, + "key[code=-11][shiftstate=`caps_lock`]": { + "foreground": "var(--primary)" + }, + "key-hint": { + "background": "transparent", + "foreground": "var(--on-surface-variant)", + "font-family": "monospace", + "font-size": "12sp", + "padding": "0dp 1dp 1dp 0dp", + "text-max-lines": "1" + }, + "key-popup-box": { + "background": "var(--popup-surface)", + "foreground": "var(--on-surface)", + "font-size": "22sp", + "shape": "var(--shape)", + "shadow-elevation": "6dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "key-popup-element:focus": { + "background": "var(--focused-popup-surface)", + "shape": "var(--shape)" + }, + "key-popup-element[code=-255]": { + "font-size": "18sp", + "text-max-lines": "1" + }, + "key-popup-extended-indicator": { + "font-size": "16sp" + }, + + "smartbar": { + "font-size": "18sp" + }, + "smartbar-shared-actions-toggle": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "margin": "6dp", + "shape": "circle()" + }, + "smartbar-extended-actions-toggle": { + "background": "transparent", + "foreground": "var(--on-surface-variant)", + "margin": "6dp", + "shape": "circle()" + }, + "smartbar-action-key[code=-214]": { + "background": "var(--primary)", + "shape": "circle()", + "margin": "4dp", + "background-sheen": "18% 14%" + }, + "smartbar-action-key-icon[code=-214]": { + "foreground": "var(--on-primary)", + "font-size": "20sp" + }, + "smartbar-action-key": { + "background": "transparent", + "foreground": "var(--on-background)", + "shape": "var(--shape)" + }, + "smartbar-action-key:disabled": { + "foreground": "var(--on-background-disabled)" + }, + + "smartbar-actions-overflow": { + "margin": "4dp" + }, + "smartbar-actions-overflow-customize-button": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "font-size": "14sp", + "margin": "0dp 8dp 0dp 0dp", + "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", + "background-sheen": "18% 14%" + }, + "smartbar-action-tile": { + "background": "var(--surface)", + "foreground": "var(--on-background)", + "font-size": "14sp", + "margin": "4dp", + "padding": "4dp", + "shape": "rounded-corner(20%, 20%, 20%, 20%)", + "text-align": "center", + "text-max-lines": "2", + "text-overflow": "ellipsis" + }, + "smartbar-action-tile:disabled": { + "foreground": "var(--on-background-disabled)" + }, + "smartbar-action-tile-icon": { + "font-size": "24sp", + "margin": "0dp 0dp 0dp 8dp" + }, + + "smartbar-actions-editor": { + "background": "var(--sheet)", + "foreground": "var(--on-background)", + "shape": "rounded-corner(24dp, 24dp, 0dp, 0dp)" + }, + "smartbar-actions-editor-header": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "16sp", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-actions-editor-header-button": { + "margin": "4dp", + "shape": "circle()" + }, + "smartbar-actions-editor-subheader": { + "foreground": "var(--primary)", + "font-size": "16sp", + "font-weight": "bold", + "padding": "12dp 16dp 12dp 8dp", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-actions-editor-tile-grid": { + "margin": "4dp 0dp" + }, + "smartbar-actions-editor-tile": { + "margin": "4dp", + "padding": "8dp", + "text-align": "center", + "text-max-lines": "2", + "text-overflow": "ellipsis" + }, + "smartbar-actions-editor-tile[code=-999]": { + "foreground": "var(--on-background-disabled)" + }, + "smartbar-actions-editor-tile[code=-991]": { + "foreground": "var(--drag-marker)" + }, + + "smartbar-candidate-word": { + "background": "transparent", + "foreground": "var(--on-background)", + "font-size": "14sp", + "margin": "4dp", + "padding": "4dp 0dp", + "shape": "rectangle()", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-candidate-word:pressed": { + "background": "var(--surface)", + "foreground": "var(--on-surface)" + }, + "smartbar-candidate-word[auto-commit=1]": { + "foreground": "var(--primary)" + }, + "smartbar-candidate-word[auto-commit=1]:pressed": { + "background": "var(--surface)", + "foreground": "var(--primary)" + }, + "smartbar-candidate-word-secondary-text": { + "font-size": "8sp", + "margin": "0dp 2dp 0dp 0dp" + }, + "smartbar-candidate-clip": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "14sp", + "margin": "4dp 7dp", + "padding": "8dp 0dp", + "shape": "var(--shape-chip)", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "smartbar-candidate-clip:pressed": { + "background": "var(--surface-variant)", + "foreground": "var(--on-surface)" + }, + "smartbar-candidate-clip-icon": { + "margin": "0dp 0dp 4dp 0dp" + }, + "smartbar-candidate-clip-dismiss": { + "background": "var(--background)", + "foreground": "var(--on-background)", + "font-size": "14sp", + "margin": "6dp 3dp 0dp 3dp", + "shape": "circle()" + }, + "smartbar-candidate-spacer": { + "foreground": "var(--spacer-color)" + }, + + "clipboard-header": { + "foreground": "var(--on-background)", + "font-size": "16sp" + }, + "clipboard-header-button": { + "margin": "4dp", + "shape": "circle()" + }, + "clipboard-header-button:disabled": { + "foreground": "var(--on-background-disabled)" + }, + "clipboard-header-text": { + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "clipboard-subheader": { + "font-size": "14sp", + "margin": "6dp 10dp 6dp 6dp" + }, + "clipboard-content": { + "padding": "10dp 0dp", + "background": "var(--background-variant)" + }, + "clipboard-filter-row": { + "background": "var(--background-variant)", + "foreground": "var(--on-background)", + "padding": "0dp 0dp 4dp 0dp", + "shape": "var(--shape-variant)" + }, + "clipboard-filter-chip": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "margin": "4dp 4dp 0dp 4dp", + "padding": "8dp 4dp", + "shape": "var(--shape-chip)" + }, + "clipboard-filter-chip[state=`active`]": { + "background": "var(--primary)", + "foreground": "var(--on-primary)" + }, + "clipboard-filter-chip-text": { + "margin": "4dp 0dp 0dp 0dp" + }, + "clipboard-grid": { + "shape": "var(--shape-variant)" + }, + "clipboard-item": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "13sp", + "margin": "4dp", + "shape": "var(--shape-variant)", + "text-max-lines": "10", + "text-overflow": "ellipsis" + }, + "clipboard-item[type=`text`]": { + "padding": "12dp 8dp" + }, + "clipboard-item-description": { + "font-size": "12sp", + "font-style": "italic" + }, + "clipboard-item-popup": { + "background": "var(--sheet)", + "foreground": "var(--on-surface)", + "font-size": "14sp", + "margin": "4dp", + "shape": "var(--shape-variant)", + "shadow-elevation": "12dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "clipboard-item-popup[type=`text`]": { + "padding": "12dp 8dp" + }, + "clipboard-item-timestamp": { + "font-size": "11sp", + "padding": "16dp 8dp" + }, + "clipboard-item-actions": { + "background": "var(--sheet)", + "foreground": "var(--on-surface)", + "margin": "4dp", + "shape": "var(--shape-variant)", + "shadow-elevation": "12dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "clipboard-item-action": { + "font-size": "16sp", + "padding": "12dp" + }, + "clipboard-item-action-text": { + "margin": "4dp 0dp 0dp 0dp" + }, + "clipboard-clear-all-dialog": { + "background": "var(--sheet)", + "foreground": "var(--on-surface)", + "shape": "var(--shape-variant)", + "shadow-elevation": "12dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "clipboard-clear-all-dialog-message": { + "padding": "16dp" + }, + "clipboard-clear-all-dialog-buttons": { + "padding": "4dp" + }, + "clipboard-clear-all-dialog-button": { + "background": "transparent", + "foreground": "var(--on-surface)", + "shape": "var(--shape-variant)" + }, + "clipboard-history-disabled-title": { + "font-weight": "bold" + }, + "clipboard-history-disabled-message": { + "padding": "0dp 4dp 0dp 8dp" + }, + "clipboard-history-disabled-button": { + "background": "var(--primary)", + "foreground": "var(--on-primary)", + "shape": "rounded-corner(24dp,24dp,24dp,24dp)", + "background-sheen": "18% 14%" + }, + "clipboard-history-locked-title": { + "font-weight": "bold", + "text-align": "center" + }, + "clipboard-history-locked-message": { + "padding": "0dp 4dp 0dp 0dp", + "text-align": "center" + }, + + "extracted-landscape-input-layout": { + "background": "var(--background)" + }, + "extracted-landscape-input-field": { + "background": "transparent", + "foreground": "var(--on-background)", + "font-size": "16sp", + "shape": "rounded-corner(12dp, 12dp, 12dp, 12dp)" + }, + "extracted-landscape-input-action": { + "background": "var(--primary)", + "foreground": "var(--on-surface)", + "shape": "rounded-corner(4dp, 4dp, 4dp, 4dp)" + }, + + "glide-trail": { + "foreground": "var(--primary)" + }, + + "incognito-mode-indicator": { + "foreground": "var(--incognito-icon-color)" + }, + + "inline-autofill-chip": { + "background": "var(--surface)", + "foreground": "var(--on-surface)" + }, + + "media": { + "background": "var(--background-variant)", + "foreground": "var(--on-background)" + }, + "media-emoji-subheader": { + "font-weight": "bold", + "margin": "4dp" + }, + "media-emoji-key": { + "background": "transparent", + "foreground": "var(--on-background)", + "font-size": "22sp", + "shape": "var(--shape)" + }, + "media-emoji-key:pressed": { + "background": "var(--surface)", + "foreground": "var(--on-surface)" + }, + "media-emoji-key-popup-box": { + "background": "var(--popup-surface)", + "foreground": "var(--on-surface)", + "font-size": "22sp", + "shape": "var(--shape)", + "shadow-elevation": "6dp", + "shadow-color": "rgba(0,6,12,0.85)" + }, + "media-emoji-key-popup-element:focus": { + "background": "var(--focused-popup-surface)", + "shape": "var(--shape)" + }, + "media-emoji-tab": { + "foreground": "var(--on-background)" + }, + "media-emoji-tab:focus": { + "foreground": "var(--primary)" + }, + "media-bottom-row-button": { + "padding": "16dp 0dp", + "shape": "var(--shape)" + }, + "media-emoji-key-popup-extended-indicator": { + "foreground": "inherit" + }, + + "one-handed-panel": { + "background": "var(--one-hand-background)", + "foreground": "var(--one-hand-foreground)" + }, + "one-handed-panel-button": { + "padding": "8dp", + "font-size": "24sp", + "background": "var(--surface)", + "shape": "circle()" + }, + + "subtype-panel": { + "background": "var(--sheet)", + "foreground": "var(--on-background)", + "shape": "rounded-corner(24dp, 24dp, 0dp, 0dp)" + }, + "subtype-panel-header": { + "background": "var(--surface)", + "foreground": "var(--on-surface)", + "font-size": "18sp", + "padding": "12dp", + "text-align": "center", + "text-max-lines": "1", + "text-overflow": "ellipsis" + }, + "subtype-panel-list-item": { + "font-size": "16sp", + "padding": "16dp" + }, + "subtype-panel-list-item-icon-leading": { + "font-size": "24sp", + "padding": "0dp 0dp 16dp 0dp" + }, + "subtype-panel-list-item-text": { + "text-max-lines": "1", + "text-overflow": "ellipsis" + } +} From 4b195ab92cbeedbc15aa1a231d5d8aaf48839a5b Mon Sep 17 00:00:00 2001 From: Batmancpu <261216860+Batmancpu@users.noreply.github.com> Date: Mon, 5 Oct 2026 06:56:28 +0000 Subject: [PATCH 2/6] Make Liquid Glass themes the default Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- .../kotlin/dev/patrickgold/florisboard/app/AppPrefs.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/src/main/kotlin/dev/patrickgold/florisboard/app/AppPrefs.kt b/app/src/main/kotlin/dev/patrickgold/florisboard/app/AppPrefs.kt index a417bcd15..d329cd7f5 100644 --- a/app/src/main/kotlin/dev/patrickgold/florisboard/app/AppPrefs.kt +++ b/app/src/main/kotlin/dev/patrickgold/florisboard/app/AppPrefs.kt @@ -1809,12 +1809,12 @@ abstract class FlorisPreferenceModel : PreferenceModel() { ) val dayThemeId = custom( key = "theme__day_theme_id", - default = extCoreTheme("floris_day"), + default = extCoreTheme("liquid_glass_indian"), serializer = ExtensionComponentName.Serializer, ) val nightThemeId = custom( key = "theme__night_theme_id", - default = extCoreTheme("floris_night"), + default = extCoreTheme("liquid_glass"), serializer = ExtensionComponentName.Serializer, ) val accentColor = custom( @@ -1828,12 +1828,12 @@ abstract class FlorisPreferenceModel : PreferenceModel() { // the keyboard someone is looking at. val themeIdBeforeHighContrastDay = custom( key = "theme__day_theme_id_before_high_contrast", - default = extCoreTheme("floris_day"), + default = extCoreTheme("liquid_glass_indian"), serializer = ExtensionComponentName.Serializer, ) val themeIdBeforeHighContrastNight = custom( key = "theme__night_theme_id_before_high_contrast", - default = extCoreTheme("floris_night"), + default = extCoreTheme("liquid_glass"), serializer = ExtensionComponentName.Serializer, ) val sunriseTime = localTime( From 97ab04b92673d4eadf2d1f0f860f160ab1e2e2fb Mon Sep 17 00:00:00 2001 From: Batmancpu <261216860+Batmancpu@users.noreply.github.com> Date: Mon, 5 Oct 2026 07:19:58 +0000 Subject: [PATCH 3/6] Make Liquid Glass themes the default, increase blur and reflection, set up Github actions Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 2 +- .../stylesheets/liquid_glass.json | 12 ++++++------ .../stylesheets/liquid_glass_indian.json | 12 ++++++------ 3 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index aba1e395f..78a6ce1e6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,7 @@ name: Build Android APK on: push: - branches: [ main, master ] + branches: [ main, master, dictator, dictator-* ] workflow_dispatch: permissions: diff --git a/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json index 6b4ada172..266a1bb6d 100644 --- a/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json +++ b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass.json @@ -15,7 +15,7 @@ "--popup-surface": "rgba(62, 74, 92, 0.94)", "--focused-popup-surface": "rgba(124, 142, 166, 0.96)", - "--rim": "rgba(228, 240, 252, 0.26)", + "--rim": "rgba(255, 255, 255, 0.60)", "--drag-marker": "#ff6b6b", "--spacer-color": "rgba(233, 239, 246, 0.20)", @@ -43,7 +43,7 @@ "window[windowmode=`floating`]": { "shadow-elevation": "18dp", "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", - "background-blur": "10dp", + "background-blur": "30dp", "shadow-color": "rgba(0,6,12,0.85)" }, "window-move-handle[windowmode=`fixed`]": { @@ -87,7 +87,7 @@ "key[code=10]": { "background": "var(--primary)", "foreground": "var(--on-primary)", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "key[code=10]:pressed": { "background": "var(--primary-variant)", @@ -158,7 +158,7 @@ "background": "var(--primary)", "shape": "circle()", "margin": "4dp", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "smartbar-action-key-icon[code=-214]": { "foreground": "var(--on-primary)", @@ -182,7 +182,7 @@ "font-size": "14sp", "margin": "0dp 8dp 0dp 0dp", "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "smartbar-action-tile": { "background": "var(--surface)", @@ -418,7 +418,7 @@ "background": "var(--primary)", "foreground": "var(--on-primary)", "shape": "rounded-corner(24dp,24dp,24dp,24dp)", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "clipboard-history-locked-title": { "font-weight": "bold", diff --git a/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json index ab4643e03..855770a21 100644 --- a/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json +++ b/app/src/main/assets/ime/theme/org.florisboard.themes/stylesheets/liquid_glass_indian.json @@ -15,7 +15,7 @@ "--popup-surface": "rgba(62, 74, 92, 0.94)", "--focused-popup-surface": "rgba(124, 142, 166, 0.96)", - "--rim": "rgba(228, 240, 252, 0.26)", + "--rim": "rgba(255, 255, 255, 0.60)", "--drag-marker": "#ff6b6b", "--spacer-color": "rgba(233, 239, 246, 0.20)", @@ -43,7 +43,7 @@ "window[windowmode=`floating`]": { "shadow-elevation": "18dp", "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", - "background-blur": "10dp", + "background-blur": "30dp", "shadow-color": "rgba(0,6,12,0.85)" }, "window-move-handle[windowmode=`fixed`]": { @@ -87,7 +87,7 @@ "key[code=10]": { "background": "var(--primary)", "foreground": "var(--on-primary)", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "key[code=10]:pressed": { "background": "var(--primary-variant)", @@ -158,7 +158,7 @@ "background": "var(--primary)", "shape": "circle()", "margin": "4dp", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "smartbar-action-key-icon[code=-214]": { "foreground": "var(--on-primary)", @@ -182,7 +182,7 @@ "font-size": "14sp", "margin": "0dp 8dp 0dp 0dp", "shape": "rounded-corner(24dp, 24dp, 24dp, 24dp)", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "smartbar-action-tile": { "background": "var(--surface)", @@ -418,7 +418,7 @@ "background": "var(--primary)", "foreground": "var(--on-primary)", "shape": "rounded-corner(24dp,24dp,24dp,24dp)", - "background-sheen": "18% 14%" + "background-sheen": "40% 30%" }, "clipboard-history-locked-title": { "font-weight": "bold", From c06c303731c588a686851acadceca27e56e78bab Mon Sep 17 00:00:00 2001 From: Batmancpu <261216860+Batmancpu@users.noreply.github.com> Date: Mon, 5 Oct 2026 07:34:54 +0000 Subject: [PATCH 4/6] Fix github actions by installing NDK and building bergamot translation engine Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- .github/workflows/build.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 78a6ce1e6..eddbf9fe6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -47,10 +47,17 @@ jobs: run: | chmod +x gradlew chmod +x tools/fetch-sherpa-onnx.sh + chmod +x tools/bergamot/build-android.sh - name: Fetch Sherpa ONNX Libraries run: ./tools/fetch-sherpa-onnx.sh + - name: Build Bergamot Translation Engine + run: | + export ANDROID_HOME=$ANDROID_SDK_ROOT + echo "y" | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --install "cmake;4.1.2" "ndk;29.0.14206865" + ./tools/bergamot/build-android.sh + - name: Build APK run: ./gradlew assembleDebug From b00c1ab5b0b6eb72eaf62c5dc93e8f05fd41cc9b Mon Sep 17 00:00:00 2001 From: Batmancpu <261216860+Batmancpu@users.noreply.github.com> Date: Mon, 5 Oct 2026 08:07:58 +0000 Subject: [PATCH 5/6] Isolate dictate voice IME into its own Dictator app Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com> --- README.md | 6 ++--- app/build.gradle.kts | 2 +- app/src/main/AndroidManifest.xml | 25 ++----------------- app/src/main/res/values/strings.xml | 4 +-- .../res/values/strings_dont_translate.xml | 18 ++++++------- 5 files changed, 17 insertions(+), 38 deletions(-) diff --git a/README.md b/README.md index 1b524ac61..f93815156 100644 --- a/README.md +++ b/README.md @@ -1,12 +1,12 @@
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 21c94a93e..1a17dfcae 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -68,7 +68,7 @@ configure