Nik
d1840a2184
build: Update ImGui to v1.92.1 ( #2325 )
...
Update ImGui to the latest version and rewrite most of the font handling
code
2025-07-10 10:00:39 +02:00
paxcut
5c4cf7379f
feat: Added Subpixel Font rendering ( #2092 )
...
Proof of concept for implementing subpixel processing in ImGui. This is
work in progress, and it is bound to have problems.
What it does:
1) Uses freetype own subpixel processing implementation to build a
32-bit color atlas for the default font only (no icons, no unifont) . 2)
Avoids pixel perfect font conversion when possible. 3) Self contained,
no ImGui source code changes.
4) Results in much improved legibility of fonts rendered on low dpi LCD
screens that use horizontal RGB pixel layouts (no BRG or OLED or CRT if
they even exist anymore)
What it doesn't:
1) Fancy class based interface. The code is barely the minimum needed to
show it can work. 2) Dual source color blending. That needs to be
implemented in shader code, so it needs to change ImGui source code
although minimally. This will result in some characters appearing dimmer
than others. Easily fixed with small fragment and vertex shaders. 3)
subpixel positioning. If characters are very thin they will look
colored, or they can be moved to improve legibility. 4) deal with
detection of fringe cases including rare pixel layouts, non LCD screens,
Mac-OS not handling subpixel rendering and any other deviation from the
standard LCD. 5) tries to be efficient in speed or memory use. Font
Atlases will be 4 times the size they were before, but there are no
noticeable delays in font loading in the examples I have tried.
Any comments and code improvements are welcome.
---------
Co-authored-by: Nik <werwolv98@gmail.com >
2025-05-11 15:36:32 +02:00
WerWolv
ccaf1e33c0
build: Make this modules stuff actually mostly work on Clang
2025-02-18 00:39:53 +01:00
WerWolv
abf97212fe
build: Added some initial test code for C++ Modules
2025-02-17 22:57:21 +01:00
WerWolv
0a6681ccb7
impr: Remove dependencies on curl, mbedTLS and GLFW in the SDK
2025-02-03 20:50:11 +01:00
WerWolv
24e7c2f3db
fix: Make sure all textures are destroyed before glfw gets uninitialized
2025-01-27 22:10:30 +01:00
WerWolv
117eb1e2a7
feat: Added more granular font settings
...
Fixes #1260
2025-01-18 23:34:43 +01:00
WerWolv
3129d6e8fd
impr: Simplified custom font selection
2025-01-18 19:03:55 +01:00
WerWolv
48de609f53
impr: Added telemetry about whether ImHex runs on a corporate machine
2025-01-04 16:11:35 +01:00
WerWolv
1298f2b688
impr: Refactor previous commits to work with other environments too
2024-12-28 21:37:45 +01:00
WerWolv
43c88a2fab
feat: Added system to handle version migrations
2024-12-26 14:01:46 +01:00
WerWolv
27b1a5dc98
impr: Make highlight hovering more efficient
2024-07-08 21:34:27 +02:00
WerWolv
a9915579a0
impr: Better detection of Intel GPUs with really bad driver bugs
2024-06-22 22:58:58 +02:00
WerWolv
bee4b906fb
fix: Crash when closing providers
2024-06-16 14:48:31 +02:00
WerWolv
c217b1b100
build: Replace -WIP version suffix with .WIP
2024-06-05 20:59:48 +02:00
iTrooz
984438e98d
feat: show Linux distribution information on startup ( #1729 )
2024-06-03 10:02:29 +02:00
WerWolv
563bf78f03
impr: Allow providers to be closed quicker after being opened
2024-05-17 21:56:43 +02:00
WerWolv
d7ddf991a9
fix: Missing includes
2024-05-08 21:44:30 +02:00
WerWolv
61b9c0970b
impr: Load unifont at correct size
...
Fixes #1604
2024-03-21 21:27:50 +01:00
WerWolv
fdf01dfb50
impr: Get rid of cimgui shared library by hooking pinvoke handler
2024-03-12 23:17:49 +01:00
WerWolv
ea601a7d03
feat: Added option to highlight pattern parents in the hex editor when hovering
2024-02-25 14:30:56 +01:00
WerWolv
9d02379583
impr: Don't allow opening the same file twice
...
Fixes #1569
2024-02-24 12:06:06 +01:00
WerWolv
56e7c15064
impr: Refactor and modularize data information view
2024-02-21 00:06:52 +01:00
WerWolv
adc51d3773
fix: Crash when restarting ImHex more than once
2024-02-19 22:06:46 +01:00
WerWolv
daf4e5cad6
refactor: More cleanup of the main file
2024-02-11 13:46:06 +01:00
Nik
bcbcb1f23c
impr: Various web build improvements, API cleanup ( #1541 )
2024-02-10 23:31:05 +01:00
Nik
339541a56f
impr: Restructure various components much better ( #1520 )
2024-01-28 22:14:59 +01:00
Nik
58603ed12a
impr: Better experience when first starting ImHex ( #1510 )
2024-01-21 18:39:51 +01:00
WerWolv
82a3017629
feat: Added always on top and fullscreen mode toggle
2024-01-15 20:52:08 +01:00
WerWolv
72f4331703
feat: Added virtual files to the pattern language
2024-01-11 20:11:22 +01:00
WerWolv
e951359a46
feat: Add frame time graph to FPS display
2023-12-20 13:42:42 +01:00
WerWolv
c7ab4a4569
refactor: Get rid of this->m_
2023-12-19 13:10:25 +01:00
WerWolv
dd4be3b772
refactor: Make sure unlocalized strings are always actually unlocalized
2023-12-19 12:22:28 +01:00
WerWolv
09904b77eb
feat: Add support for bold and italic fonts
2023-11-29 23:47:37 +01:00
WerWolv
23fc232c47
impr: Try to align additional fonts automatically
2023-11-28 13:52:26 +01:00
WerWolv
c02c27b63d
refactor: Moved over to more flexible font loader
2023-11-28 01:55:41 +01:00
WerWolv
284f8534ab
refactor: Move the builtin plugin specific init tasks to the plugin
2023-11-28 00:19:42 +01:00
Nik
7e660450ed
feat: Implement better and more complete undo/redo stack ( #1433 )
...
This PR aims to implement a more complete undo/redo stack that, unlike
the old one, also supports undoing insertions, deletions and resize
operations
2023-11-25 12:43:48 +01:00
WerWolv
c89a870fe9
refactor: Streamline entire view system
2023-11-21 13:47:50 +01:00
WerWolv
1249eb3261
impr: Optimize includes in often used header files
2023-11-18 14:34:33 +01:00
WerWolv
c35ea228e4
fix: Crash when trying to close providers
2023-11-10 21:03:31 +01:00
WerWolv
498d8c1d65
impr: General code cleanup
2023-11-10 20:47:08 +01:00
WerWolv
ef320b74b0
impr: Handle showing popups when closing unsaved providers better
2023-11-07 15:31:54 +01:00
WerWolv
4e4cdcdf61
feat: Added release notes and commits to about page
2023-11-05 19:57:29 +01:00
Nik
58189e5403
impr: Allow console output to work when debugging ( #1382 )
2023-10-22 21:39:14 +00:00
Nik
f114239f51
feat: Added Auto Updater for Windows, macOS and Ubuntu ( #1377 )
2023-10-21 18:40:24 +00:00
WerWolv
f79e2df11a
feat: Added shortcut to switch between providers
2023-09-24 18:11:17 +02:00
iTrooz
1ed658bcdc
feat: Added command line interface support ( #1172 )
...
System design has been discussed on discord
Should fix #948
---------
Co-authored-by: WerWolv <werwolv98@gmail.com >
2023-07-13 14:08:23 +02:00
WerWolv
f9909dab98
fix: Properly clear all global registries
2023-06-30 13:40:16 +02:00
WerWolv
d527675bda
build: Make sure changing commit hash doesn't trigger a full rebuild
...
Closes #1137
2023-06-26 14:01:45 +02:00