Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
7604aff
Use Noto Serif Bengali font for displaying Bengali
mominul Mar 10, 2021
652eabb
Maintain Filesystem Hierarchy Standard while installing (#206)
mominul Mar 21, 2021
c60e077
Bug Fix: Save the last position of the TopBar
mominul Apr 8, 2021
bb84fc6
Introduce Systray entry for TopBar (#209)
mominul Apr 26, 2021
08e641d
LIBEXECDIR should be set and used
gunnarhj Apr 27, 2021
89b4a78
Controlling the inclusion of 3rdParty code(QSimpleUpdater) (#210)
mominul Apr 30, 2021
3b2b267
Implement feature: Inclusion of typed English word
mominul May 4, 2021
6515b5b
Add initial fcitx5 support
wengxt Feb 23, 2021
ee2a8ea
Use shared OpenBangla/Keyboard.conf file.
wengxt Mar 24, 2021
df3bd3e
Use riti's new configuration functions
mominul May 6, 2021
aadd554
Add shim for supporting Fcitx 5.0.5 version
mominul May 7, 2021
0f26eb9
Use std::filesystem::last_write_time instead of shim to simplify the …
wengxt May 7, 2021
f6fceda
Build system configuration (#222)
mominul Jun 16, 2021
0c82f9e
[ui] Introduce cli args (#227)
ahmubashshir Jul 3, 2021
6972156
View the TopBar according to the last state of it (#230)
mominul Jul 4, 2021
3aa3e3a
Update the `riti` submodule (#231)
mominul Jul 4, 2021
e3c7e44
Emoji Support! (#236)
mominul Jul 10, 2021
15161a1
Added ZWJ in the Borno layout.
mominul Aug 8, 2021
ab29a18
Version Bump :rocket: and riti sync
mominul Aug 8, 2021
55f1115
Update Riti (#254)
mominul Oct 13, 2021
4f9e46b
Update Riti (#263)
mominul Nov 23, 2021
e83e220
Edit National keyboard to conform with Ekushey's National layout. (#281)
mominul Jan 24, 2022
f68e918
Fix the key rejection bug (#271)
mominul Jan 31, 2022
9ba48a4
ANSI encoding support! :rocket: (#270)
mominul Mar 17, 2022
779af32
Change fcitx label
mominul Mar 18, 2022
eefdc81
Fix Fcitx CandidateList paging issue (#289)
mominul Apr 22, 2022
ed4dc73
Smart Quoting feature (#294)
mominul May 5, 2022
0bb2e2e
Support Ctrl + Backspace combination
mominul Jul 6, 2022
bbf643a
Fix focus out behavior of preedit text in ibus engine
mominul Jul 7, 2022
30aa953
Merge pull request #300 from OpenBangla/ibus_commit_and_ctrl_bksp
mominul Jul 7, 2022
dece612
CMake and CPack modifications (#305)
mominul Jul 12, 2022
a7d3743
Add a callback engine_reset_cb
mike-fabian Aug 15, 2022
5266b77
Merge pull request #313 from mike-fabian/develop-add-reset-callback
mominul Aug 19, 2022
b6c84d1
Use scalable icons from theme for systray item
mominul Nov 22, 2022
b44f6b5
Use ubuntu-22.04 image in Github Actions CI
mominul Nov 23, 2022
ffa3c9a
Use sudo in workflow apt coommands
mominul Nov 23, 2022
7a398a4
Use the xcb backend under Wayland seesion and fix deprecation warnings.
mominul Dec 22, 2022
c85f4f3
Detect Dark Mode
mominul Jan 14, 2023
28b8f1a
Merge branch 'master' into develop
mominul Jun 30, 2023
7b8cfe6
Build packages for ibus and fcitx in Github Actions (#341)
mominul Jun 30, 2023
780bd40
Set package name
mominul Jul 21, 2023
262eab0
feat: add option to import OBK *.json layout file
NabilSnigdho Oct 29, 2023
7586ea9
Merge pull request #355 from NabilSnigdho/develop
mominul Nov 5, 2023
785ed2d
Add entry for version 3.0.0 in CHANGELOG.md
mominul Dec 3, 2023
d7129fd
Preserve user's candidate candidate selection if the keypress was a p…
mominul Dec 23, 2023
f402472
Use the CMAKE_INSTALL_PREFIX instead of hardcoded /usr/share for load…
wengxt Dec 26, 2023
289fd45
Use ZSTD_getFrameContentSize() function as we can hard depend on zstd…
mominul Jan 2, 2024
addbd4e
OpenSuse Tumbleweed Package building (#373)
mominul Jan 13, 2024
c7aeeda
Use custom flavored emoji shortcodes
mominul Jan 19, 2024
0d7a88a
Build packages for opensuse leap15.5 and update dist versions
mominul Aug 12, 2024
2e6d099
Require C++17 (for fcitx)
mominul Aug 12, 2024
10669cf
Change package naming convention
mominul Aug 16, 2024
c036b84
change package name in build.sh
mominul Aug 16, 2024
92c5a0a
update actions/checkout
mominul Feb 23, 2025
9f3e65f
Replace obsolete AUR helpers with paru in README
raayonsh Mar 17, 2025
52455d5
Update README: Change wording for AUR helper examples
raayonsh Mar 17, 2025
048372f
Merge pull request #394 from codayon/develop
mominul Mar 17, 2025
21f0117
Merge branch 'master' into develop
mominul Apr 14, 2025
4219a7a
Update GitHub Actions workflows (#399)
mominul Apr 14, 2025
7072f4c
Remove QSimpleUpdater
mominul Apr 15, 2025
4850869
Docs: Add CONTRIBUTING.md for contribution guidelines (#402)
raayonsh Apr 19, 2025
912417a
Initial frontend compilation on Windows
mominul Mar 20, 2025
a72fb83
UI Updates (#400)
arifr404 Apr 19, 2025
be784f6
Merge frontend compilation on windows and UI update changes into develop
mominul Apr 19, 2025
0cc91ab
feat: Add issue templates for bug reports and feature requests (#412)
raayonsh Jun 1, 2025
079f3d8
Add missing indirect include header for fcitx
wengxt Jun 20, 2025
b1a3a6f
Update riti library
mominul Jul 4, 2025
8070c29
docs: simplify and improve CONTRIBUTING.md (#422)
raayonsh Jul 23, 2025
723e348
Use one shared RitiContext for fcitx. (#424)
wengxt Aug 19, 2025
c5feb0f
Revert the imposed stylings on the UIs other than the TopBar
mominul Dec 5, 2025
9befb6f
Depend on Qt 5.15 to remove the wayland xcb hack
mominul Dec 11, 2025
7c19213
chore: update changelog
raayonsh Jan 12, 2026
b29dce3
macOS port :rocket: :tada: (#436)
mominul Jan 30, 2026
018c302
frontend: Tray launch improvements
ahmubashshir Feb 24, 2026
653937a
Fix Icon button focus issue on DeepinOS
mominul Mar 9, 2026
0db9d24
Implement TopBar position
mominul Mar 9, 2026
18a8c92
Add official aarch64 release builds to deploy workflow (#463)
permafrost06 May 11, 2026
06d91e1
cmake: Use corrosion-rs to build riti
ahmubashshir May 9, 2026
7c78122
Automatic IME configuration for Linux Desktop Environments and macOS …
mominul Jul 1, 2026
a96abab
Windows port :tada: 🚀 (#455)
mominul Jul 12, 2026
3c0b402
Add Khipro layout selection and update riti submodule (#469)
yeakiniqra Jul 13, 2026
f83d5d0
Read theme setting from the system
mominul Jul 18, 2026
d86b07e
fix: depend on Qt5::Svg explicitly, fixes icon not showing issue on
mominul Aug 23, 2026
02d6754
fix: add qt5 svg dependency in ci
mominul Aug 23, 2026
88f9532
fix: copy runtime dependency dlls in mingw environment
mominul Aug 23, 2026
3684e71
Redesign Settings Dialog
mominul Jul 18, 2026
d6c6367
Layout Viewer redesign
mominul Jul 22, 2026
48f7cbb
Introduce layout json format version 3
mominul Jul 22, 2026
1c98e7d
Redesign About Layout Dialog
mominul Jul 23, 2026
bca4944
Fix light mode for About Layout dialog
mominul Jul 23, 2026
1eca2da
Layout format v3: 'transliteration' layout type
mominul Aug 19, 2026
f9289fd
TopBar: add EN/বাং language toggle button
Sep 16, 2026
de35f7c
docs: Mint 22.3 setup notes for PR #475 and the EN/বাং toggle button
Sep 16, 2026
fcf90e9
chore: keep CI workflows identical to upstream master
Sep 16, 2026
0a5e1ca
docs: move setup notes to root README.md
Sep 16, 2026
8251396
docs: make README.md the front page, fix structure
Sep 16, 2026
e0920f1
docs: add 'What was fixed' summary section to README
Sep 16, 2026
f0edc56
ci: add PR-era Windows/macOS workflows as copy-paste source
Sep 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 84 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
---
name: Bug Report
description: File a bug report to help us improve OpenBangla Keyboard
labels: ["Bug"]
title: "[Bug]: "
type: bug
body:
- type: markdown
attributes:
value: |
Thank you for reporting a bug in OpenBangla Keyboard (OBK). Please provide as much detail as possible to help us diagnose and fix the issue.
- type: input
id: obk-version
attributes:
label: OpenBangla Keyboard Version
description: What version of OpenBangla Keyboard are you using?
placeholder: e.g., 2.0.0
validations:
required: true
- type: input
id: os-details
attributes:
label: Operating System and Version
description: Which OS or Distro and which version are you using?
placeholder: e.g., Windows 11 25H2, macOS 26.4, Linux Mint 22.3
validations:
required: true
- type: input
id: environment-details
attributes:
label: Environment Details (for GNU/Linux Users)
description: Which desktop environment and display type are you using?
placeholder: e.g., KDE Plasma Wayland, Cinnamon X11
validations:
required: false
- type: dropdown
id: input-method
attributes:
label: Input Method Framework
description: Which input method framework are you using?
multiple: true
options:
- IBus
- Fcitx
- Other (Specify in Additional Context)
validations:
required: false
- type: textarea
id: bug-description
attributes:
label: Describe the Bug
description: A clear and concise description of what the bug is.
placeholder: Let us know what issues you are experiencing.
validations:
required: true
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to Reproduce
description: Provide detailed steps to reproduce the bug.
placeholder: |
1. Open OBK
2. Select a specific layout
3. Type specific characters
4. Observe the issue
validations:
required: true
- type: textarea
id: logs
attributes:
label: Logs or Screenshots
description: If applicable, please include relevant logs, screenshots, or other files to help explain the problem.
placeholder: Paste logs here or describe how to access screenshots.
validations:
required: false
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Any other context about the problem, such as specific keyboard layouts or system configurations.
placeholder: Add any relevant details here.
validations:
required: false
---
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Got any questions?
url: https://github.com/OpenBangla/OpenBangla-Keyboard/discussions/categories/q-a
about: General inquiries or help with OpenBangla Keyboard.
- name: Share your ideas!
url: https://github.com/OpenBangla/OpenBangla-Keyboard/discussions/categories/ideas
about: Suggest new features or improvements for the project.
44 changes: 44 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
name: Feature Request
description: Suggest an idea for improving OpenBangla Keyboard
labels: ["Enhancement"]
title: "[Feature]: "
type: feature
body:
- type: markdown
attributes:
value: |
Thank you for suggesting an improvement for OpenBangla Keyboard (OBK). Please provide as much detail as possible to help us understand your idea.
- type: textarea
id: feature-description
attributes:
label: Describe the Feature
description: A clear and concise description of the feature you'd like to see.
placeholder: What feature would you like to add to OBK?
validations:
required: true
- type: textarea
id: problem-solved
attributes:
label: Problem or Use Case
description: What problem does this feature solve, or what use case does it address?
placeholder: Describe the problem or scenario this feature would improve.
validations:
required: true
- type: textarea
id: proposed-solution
attributes:
label: Proposed Solution
description: How do you envision this feature working? Provide details on the implementation or behavior.
placeholder: Describe how you think this should work in OBK.
validations:
required: false
- type: textarea
id: additional-context
attributes:
label: Additional Context
description: Any other details, such as specific keyboard layouts, user workflows, or examples from other software.
placeholder: Add any relevant details or examples here.
validations:
required: false
---
68 changes: 33 additions & 35 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,89 +6,87 @@ on:
tags-ignore: [ '**' ]

jobs:

build:
if: contains(github.event.head_commit.message, 'deploy+') || contains(github.event.head_commit.message, 'pkg+')
strategy:
matrix:
container: [ "ubuntu:18.04", "ubuntu:20.04", "ubuntu:22.04", "ubuntu:24.04", "debian:11", "debian:12", "fedora:37", "fedora:39", "fedora:40", "fedora:41", "archlinux:latest" ]
container: [ "ubuntu:20.04", "ubuntu:22.04", "ubuntu:24.04", "ubuntu:25.04", "debian:12", "debian:13", "fedora:40", "fedora:41", "fedora:42", "archlinux:latest" ]
# this list should be updated from time to time by consulting these pages:
# https://releases.ubuntu.com/
# https://wiki.debian.org/DebianReleases#Production_Releases
# https://fedoraproject.org/wiki/Releases
# https://en.wikipedia.org/wiki/Fedora_Linux_release_history#Release_history
runs-on: "ubuntu-latest"
container:
image: ${{ matrix.container }}
env:
DIST: ${{ matrix.container }}
DEBIAN_FRONTEND: noninteractive
steps:
- name: install-git
run: |
# Install Git based on distro
if command -v apt-get >/dev/null; then
apt-get update -y
apt-get install -y git
elif command -v dnf >/dev/null; then
dnf install -y git
elif command -v zypper >/dev/null; then
zypper install -y git
elif command -v pacman >/dev/null; then
pacman -Sy git --noconfirm
fi

- name: checkout-source
uses: actions/checkout@v4
with:
submodules: recursive

- name: run-builder
shell: bash
run: ./tools/build.sh

- name: Sanitize container name
id: sanitizer
shell: bash
run: |
# Replace colons and slashes with dashes
SANITIZED_CONTAINER=$(echo "${{ matrix.container }}" | sed 's/[:\\/]/-/g')
echo "sanitized_container=$SANITIZED_CONTAINER" >> $GITHUB_OUTPUT

- name: upload-artifacts
uses: actions/upload-artifact@v4
with:
name: package-archives
name: pkg-${{ steps.sanitizer.outputs.sanitized_container }}
path: artifact

deploy:
release:
if: contains(github.event.head_commit.message, 'deploy+')
needs: build
runs-on: "ubuntu-latest"
container:
image: "archlinux:latest"
env:
BINTRAY_USER: ${{ secrets.BINTRAY_USER }}
BINTRAY_APIKEY: ${{ secrets.BINTRAY_APIKEY }}
BINTRAY_GPG_DATA: ${{ secrets.GPG_DATA }}
BINTRAY_GPG_ID: ${{ secrets.GPG_ID }}
JFROG_CLI_OFFER_CONFIG: false
steps:
- name: checkout-source
uses: actions/checkout@v4
with:
submodules: recursive
- name: install-jfrog-cli
uses: jfrog/setup-jfrog-cli@v1
- name: download-artifacts
uses: actions/download-artifact@v4
with:
name: package-archives
path: artifact
- name: bintray-publish
shell: bash
run: ./tools/publish.sh

release:
needs: deploy
runs-on: "ubuntu-latest"
steps:
- name: checkout-source
uses: actions/checkout@v4
- name: get-version
id: get_version
shell: bash
run: |
RELEASE_VERSION=$(cat version.txt | head -n1)
echo ::set-output name=RELEASE_VERSION::$RELEASE_VERSION
echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_OUTPUT

- name: download-artifacts
uses: actions/download-artifact@v4
with:
name: package-archives
path: artifact
path: artifacts

- name: create-release
id: create_release
uses: ncipollo/release-action@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}
tag: ${{ steps.get_version.outputs.RELEASE_VERSION }}
name: ${{ steps.get_version.outputs.RELEASE_VERSION }}
artifacts: "artifact/*"
artifacts: "artifacts/*/*"
allowUpdates: true
draft: true
body: |
Expand Down
13 changes: 13 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -143,3 +143,16 @@ fabric.properties
*.exe
*.out
*.app
.cache

target

*~
*.DS_Store
.*.swp
*mode1v3
*pbxuser
*perspectivev3
*xcuserdata*
*xcworkspace*
/build
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,6 @@
path = src/engine/riti
url = https://github.com/OpenBangla/riti.git
branch = master
[submodule "cmake/corrosion-rs"]
path = cmake/corrosion-rs
url = https://github.com/corrosion-rs/corrosion.git
1 change: 1 addition & 0 deletions .vscode/c_cpp_properties.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
"${workspaceRoot}"
],
"defines": [],
"compileCommands": "build/compile_commands.json",
"intelliSenseMode": "clang-x64",
"browse": {
"path": [
Expand Down
42 changes: 42 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,46 @@
# Change Log
## Unreleased

## 3.0.0
* Fcitx5 engine for KDE based distributions ([#202])
* Use [okkhor] as the Avro Phonetic implementation. It is substantially faster than the previous implementation ([#15])
* Add the [Khipro](https://khiprokeyboard.github.io/) layout, a modern shift-free phonetic method for Bangla ([#426](https://github.com/OpenBangla/OpenBangla-Keyboard/issues/426))
* Emoji input support ([#23])
* ANSI encoding support ([#33])
* Smart Quoting feature ([#35])
* Whole word deletion by <kbd>Ctrl</kbd> + <kbd>Backspace</kbd> keypress combination feature ([#36])
* Preserve user's candidate selection if the keypress was a punctuation mark in Phonetic Method ([#363])
* Old style typing in Fixed method ([#20])
* Inclusion of typed English word in Fixed method suggestions.
* Introduce System tray entry for TopBar ([#209])
* Installation support for new Fixed method layouts ([#355])
* Edit National keyboard to conform with Ekushey's National layout ([#281])
* Missing ZWJ character is added in the Borno layout
* Fix focus out behavior of preedit text in iBus engine ([#298], [#300])
* Prevent the preedit from reappearing at the new position after a mouse click in iBus engine ([#313])
* Detect Dark Mode to enable the Dark mode theme of the TopBar
* Performance optimizations ([#16], [#26])
* Add new autocorrect entries ([#48])

[okkhor]: https://github.com/gulshan/okkhor/
[#15]: https://github.com/OpenBangla/riti/pull/15
[#16]: https://github.com/OpenBangla/riti/pull/16
[#20]: https://github.com/OpenBangla/riti/pull/20
[#23]: https://github.com/OpenBangla/riti/pull/23
[#26]: https://github.com/OpenBangla/riti/pull/26
[#33]: https://github.com/OpenBangla/riti/pull/33
[#35]: https://github.com/OpenBangla/riti/pull/35
[#36]: https://github.com/OpenBangla/riti/pull/36
[#48]: https://github.com/OpenBangla/riti/pull/48
[#209]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/209
[#202]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/202
[#281]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/281
[#298]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/298
[#300]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/300
[#313]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/313
[#355]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/355
[#363]: https://github.com/OpenBangla/OpenBangla-Keyboard/pull/363

## 2.0.0
* Complete re-implementation of input method functionalities in Rust. ([#107][107]) It is [~1.2x faster in searching][3] dictionary suggestions.
* Dictionary suggestion is now available in Fixed Method Layouts(Provat, National etc.) ([#61][61], [#6][6])
Expand Down
Loading