Justus Garbe
33e9ad7775
fix: Draw title bar correctly when no title bar buttons exist
2023-08-13 23:54:22 +02:00
Lennard Fonteijn
df24d1e1e9
fix: Revert the FPS limiter back to the one used in v1.30.1 ( #1247 )
...
As requested on Discord, a PR to revert the FPS limiter back to the one
that was used in v1.30.1.
The new FPS limiter seems to be flawed in that it runs at about half the
speed it is supposed to be.
See this illustration:
![FPS](https://github.com/WerWolv/ImHex/assets/869973/8a101b4c-23d8-4806-8d53-3be7aeb84fed )
Left is v1.30.1, right is the new version (without this fix). See how
long it takes to respectively reach 0xE90.
This is not a performance issue, because when you fully unlock the
framerate on the right, it's just as fluent as on the left.
2023-08-11 22:03:30 +02:00
WerWolv
ef556d07ed
fix: Init task text being offset on larger screen resolutions
2023-08-09 20:02:38 +02:00
Nik
e77f138514
feat: Added Achievements ( #1230 )
...
This PR adds Achievements to ImHex that serve as both a guide and a fun
way to learn more about ImHex and reverse engineering
2023-08-06 21:33:15 +02:00
WerWolv
106e669512
feat: Added setting to remember and restore window position and size
...
Closes #1215
#944
2023-07-31 11:17:37 +02:00
WerWolv
27c8e19c14
build: Remove all static variables from headers to hopefully fix plugins
2023-07-26 13:50:51 +02:00
WerWolv
440e2d91fc
impr: Better logging during font loading
2023-07-24 23:24:11 +02:00
WerWolv
bca73ef01e
fix: Loading of custom fonts not working anymore
2023-07-24 17:25:36 +02:00
WerWolv
a4e4e01d2d
fix: Crash when cleaning log files that are open in another program
2023-07-24 15:36:29 +02:00
WerWolv
ffdaf0d16e
impr: Use better splash screen selection color generator
2023-07-23 23:38:13 +02:00
WerWolv
aa66d4b9e7
impr: Insert short delay before opening popups so the animation finishes
2023-07-23 18:22:53 +02:00
WerWolv
591435761b
impr: Added "Close ImHex" button to all plugin-related fatal popups
2023-07-22 22:59:05 +02:00
WerWolv
f5fda76414
impr: Cleanup main
2023-07-22 21:30:22 +02:00
WerWolv
46ee3f0faa
impr: Improve uncaught exception error handling to provide actual stack trace
2023-07-22 20:16:36 +02:00
WerWolv
564ae6dd8c
fix: Crash when loading bad font
2023-07-22 19:35:58 +02:00
WerWolv
8aec382440
fix: Loading of plugins and localizations after restart
2023-07-22 18:38:14 +02:00
WerWolv
0faea9d7c7
impr: Make splash screen look much nicer
2023-07-22 18:21:47 +02:00
WerWolv
3149183450
patterns: Updated pattern language
2023-07-21 11:53:37 +02:00
WerWolv
f930b6e17d
fix: Various .NET and plugin loading fixes
2023-07-19 21:40:24 +02:00
WerWolv
e9450b490f
feat: Added --plugin, --calc, --hash, --encode and --decode subcommands
2023-07-16 23:46:41 +02:00
Nik
5171bea0bf
feat: Added cross-platform .NET scripts support ( #1185 )
...
This PR intends to add support for .NET scripts that can extend ImHex's
functionality in a portable and cross-platform way.
---------
Co-authored-by: Justus Garbe <55301990+Nowilltolife@users.noreply.github.com>
2023-07-15 14:29:14 +02:00
WerWolv
f4ae1fda6d
impr: Print welcome message as fast as possible
2023-07-15 00:11:48 +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
8c0395bc7c
fix: Prevent wayland from spamming the console with useless errors
2023-07-12 14:33:09 +02:00
WerWolv
6343cb092b
build: Fixed include issues
2023-07-09 12:53:31 +02:00
WerWolv
3e797eeea2
fix: Never create an imgui.ini file
...
#1166
2023-07-07 09:20:33 +02:00
WerWolv
a78d3f9977
fix: Framerate limits not working correctly
2023-07-06 21:15:08 +02:00
WerWolv
33d3bea472
fix: Flickering cursor issues
2023-07-06 10:26:12 +02:00
iTrooz
ac2a609d0a
impr: Use execvp() instead of system() on Linux ( #1170 )
...
This PR it just a hack to fix #1160 , it doesn't solve the underlying
problem.
It fixes the problem because by using execvp() directly, it avoids the
call to `sh` done with `system()`, which has a bug on Ubuntu 22.04 which
makes it i,compatibles with the glibc inside the AppImage.
It doesn't fix the underlying problem because the programs we call
themselves still link to the AppImage's libraries instead of the system
ones.
2023-07-05 20:50:46 +02:00
WerWolv
86c4c8fa96
feat: Added new pattern inline visualizers
2023-07-04 22:18:06 +02:00
WerWolv
28dea8e5bd
fix: Menu Bar being scrollable sideways
2023-07-01 22:55:59 +02:00
iTrooz
c6c3ca4d26
fix: Reset terminate handler directly when being called + some other crashes to crash handling ( #1174 )
...
This PR fixes some things about crash handling:
- when the terminate handler is called, immediately set it back to the
original one, so can't make a recursion if the crash-handling code fails
- Only save projects if the crash occured after Imhex finished startup
- do not update the project location when saving the crash backup file:
this will remove problems when `EventAbnormalTermination` is called
before `crashCallback()`
I also added a bit more documentation
2023-07-01 12:32:28 +02:00
WerWolv
8cc6994dd0
fix: Properly apply UI scaling on launch
2023-06-30 13:40:39 +02:00
WerWolv
f9909dab98
fix: Properly clear all global registries
2023-06-30 13:40:16 +02:00
WerWolv
a5fac85727
fix: Commit hash/branch in statistics being in wrong order
2023-06-27 01:46:11 +02:00
WerWolv
8fdb60758b
impr: Load plugins asynchronously to speed up startup times
2023-06-27 00:52:13 +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
WerWolv
9282f1fe75
fix: Multiwindow support not being disabled by default on Linux
2023-06-26 09:02:23 +02:00
WerWolv
ddc0457d9a
fix: Unifont not being loaded correctly in some cases
...
Fixes #1155
2023-06-24 14:55:10 +02:00
WerWolv
ade05f8e12
impr: Only load a limited subset of unicode characters by default
2023-06-24 10:58:42 +02:00
WerWolv
1b028dfc0a
fix: Crash on exit
2023-06-23 21:39:22 +02:00
WerWolv
b019283a2f
impr: Force disable unicode support when the NoGPU version is used
2023-06-22 17:56:09 +02:00
WerWolv
da11c47693
impr: Better sorting of hex cell visualizers
2023-06-21 17:48:51 +02:00
WerWolv
c8150f3261
impr: Make statistics format not suck a whole lot
2023-06-21 00:21:16 +02:00
WerWolv
6d1f639bc6
impr: Added GPU vendor and portable version flag to statistics
2023-06-20 20:37:17 +02:00
Nik
f703b15165
feat: Added statistics and crash log uploading ( #1149 )
...
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-06-20 11:55:56 +02:00
WerWolv
54061c56bf
fix: Logging race conditions
2023-06-18 22:32:55 +02:00
WerWolv
25154dd450
build: Force enable exceptions and rtti
2023-06-18 14:42:48 +02:00
WerWolv
fdb1cace2d
fix: Properly print fatal error messages when ImHex crashes
2023-06-13 23:31:49 +02:00
WerWolv
54c6c9360a
fix: Reverted back reordering of crash callback call
2023-06-11 21:55:48 +02:00
WerWolv
9a9b211ebb
fix: Crash backups not getting saved when when an exception is thrown
2023-06-11 17:27:09 +02:00
iTrooz
cac9a69ea2
fix: Use Mode::Create instead of Mode::Write when creating crash file ( #1134 )
2023-06-11 13:10:04 +02:00
WerWolv
ee57c449e7
fix: Crash when clearing old logs on exit
2023-06-11 09:45:06 +02:00
WerWolv
73d4214fd3
fix: Window title being cleared after ImHex exits
2023-06-10 15:08:56 +02:00
WerWolv
0e8273eaa7
impr: Make sure icons are more centered
2023-06-09 00:30:12 +02:00
WerWolv
9baca91b16
impr: Better unthrown exception error handling
2023-06-08 12:16:37 +02:00
WerWolv
456895a6a6
fix: Various pattern drawer issues
2023-06-06 11:29:58 +02:00
iTrooz
25476d4e1e
build: Update ImGui and its dependencies ( #1122 )
...
This PR updates imgui and its dependencies from the last time, ~1 year
ago
(deabacbd50
)
Commits will be refactored before merging
Things you might ask :
- why did you remove `ImGui_ImplGlfw_SetBorderlessWindowMode()` ?
-> Where is it used ? The only usage of it I see is commented
(cb9a3b1f55/lib/external/imgui/source/imgui_impl_glfw.cpp (L757)
)
- why did you remove the implot anti aliasing flag ?
-> They.. seem to have removed it altogether ?
https://github.com/epezent/implot/issues/479
2023-06-04 00:09:45 +02:00
WerWolv
d10f033439
fix: Key presses not always unlocking frame rate correctly
2023-06-02 14:43:45 +02:00
iTrooz
117832e007
impr: Handle crashes that may happen before the main loop ( #1115 )
...
Draft because I absolutely do not trust myself writing good code at 2AM.
I will review it tomorrow
2023-06-01 18:35:41 +02:00
iTrooz
0ba011dbe1
feat: Add a native error message when glfw window creation fails ( #1104 )
...
Draft because I want to test it again tomorrow with all OSes, first
---------
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 17:45:41 +02:00
iTrooz
d671cde6d2
impr: Ensure program exits when set_terminate() lambda is called ( #1101 )
...
Draft for now because I am waiting for feedback from Jay
2023-05-25 09:30:25 +02:00
iTrooz
d2638c4f27
feat: Display titlebar buttons when not running borderless ( #1099 )
...
Tested on Linux (non-borderless) and Windows (borderless)
You may want to also test it just to be sure
2023-05-25 09:26:40 +02:00
iTrooz
7d457998d7
fix: Explicitly convert path to string for crash file ( #1102 )
2023-05-25 09:25:40 +02:00
iTrooz
79306fa6e1
impr: Show which commit was used to compile ImHex on CLI ( #1103 )
2023-05-25 09:25:22 +02:00
WerWolv
26eac61ddf
feat: Allow themes to set the background blur color
2023-05-24 21:05:14 +02:00
WerWolv
cb9a3b1f55
fix: Invalid key code error spam
2023-05-24 21:05:14 +02:00
WerWolv
0e3da22c76
feat: Added support for changing the page size
2023-05-23 11:34:30 +02:00
WerWolv
e32fc639c2
fix: Turning off blur again not working
2023-05-22 13:25:11 +02:00
iTrooz
7ce0613977
impr: Added better crash backup and restore mechanism ( #1094 )
...
- Add a new file 'crash.json' to store metadata about the crash, like
the log file or project opened
- show the log file of the session that caused the crash to the user
- Correctly restore the project path
2023-05-22 13:24:48 +02:00
WerWolv
f81276f7e3
feat: Added support for transparent and blurry window styles
2023-05-22 12:00:35 +02:00
WerWolv
0563a59b1b
impr: Reset back all signals when a fatal error occurred
2023-05-21 17:33:33 +02:00
WerWolv
7336c8dddc
fix: Cursor types on Windows sometimes getting stuck
2023-05-20 21:10:12 +02:00
KOLANICH
749823e044
build: Move -s
additional compiler flags into linker flags, and enable it only when gcc/clang are used. ( #1087 )
...
Compiler when compiling doesn't use them in those cases and emit a
warning, which is turned into an error by `-Werror`. Unfortunately,
CPack doesn't expose the logic it uses for stripping binaries.
2023-05-20 13:37:57 +02:00
WerWolv
7ea7c531e2
fix: Logs not being written to disk on Windows
2023-05-20 13:10:35 +02:00
iTrooz
e1620966e5
feat: Keep only 10 latest logs on exit ( #1079 )
...
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-16 14:45:24 +02:00
WerWolv
14341d611d
impr: Handle macOS Open with... correctly
2023-05-15 18:07:49 +02:00
WerWolv
c006062540
feat: Added basic network interface support
2023-05-15 11:30:24 +02:00
WerWolv
d96fc6d41b
fix: Compilation on macOS
2023-05-14 21:50:58 +02:00
WerWolv
610f109e2a
fix: Crash when too many entries are being logged at once
2023-05-14 21:39:18 +02:00
WerWolv
f2af90fe06
fix: Help hover icon issues
2023-05-11 23:56:51 +02:00
WerWolv
2f511ec4fa
impr: Improve frame cap handling
2023-05-11 23:22:06 +02:00
WerWolv
0649e0dcd3
impr: Clean up old layout stuff
2023-05-11 23:21:52 +02:00
WerWolv
0b21e30e44
fix: White border around maximized window on WIndows
2023-05-11 20:49:07 +02:00
WerWolv
ceeaca1a4b
feat: Added layout manager to save and restore custom layouts
2023-05-11 18:44:50 +02:00
WerWolv
49371398bc
fix: Resizing on windows still being janky
2023-05-11 18:43:19 +02:00
WerWolv
5c9d0e29c2
fix: Left/Right resizing not working correctly on Windows
2023-05-11 12:00:56 +02:00
WerWolv
1d2b8ac1f3
fix: Closing popups using Esc causing them to re-appear
2023-05-10 22:29:17 +02:00
classabbyamp
82f5900759
build: Added option to disable update checking ( #1036 )
...
This is aimed at use by linux distros, where package updates come from a
central location, and users shouldn't need to worry about updating ImHex
on their own. This disables parts of the ImHex UI that would not be
useful in that case.
Tested and confirmed that this works in both states of the of the
`-DIMHEX_DISABLE_UPDATE_CHECK` switch.
2023-05-05 22:03:45 +02:00
WerWolv
bec655a8c6
impr: Added event logging in debug mode
2023-05-02 20:35:30 +02:00
WerWolv
a33c7135d1
fix: Crash when closing some popups
2023-05-01 14:15:00 +02:00
WerWolv
8245f3d4c9
build: Updated libwolv
2023-04-19 21:56:34 +02:00
WerWolv
04a5efc7a3
fix: Crash when evaluating patterns to quickly
2023-04-17 17:02:10 +02:00
WerWolv
99a736df27
impr: Replace horrible pattern extra data class with a more modular system
2023-04-17 16:18:48 +02:00
WerWolv
535aeb5e39
impr: Give access to a console in clion in debug mode
2023-04-17 16:06:06 +02:00
WerWolv
1690cd2740
fix: Various issues with the new popup system
2023-04-16 21:34:29 +02:00
WerWolv
52925c99e8
impr: Default to monitor synchronized FPS limit
2023-04-13 17:12:40 +02:00
WerWolv
18d5fd5d3e
fix: Commit link in about page not working correctly
2023-04-13 16:10:55 +02:00
WerWolv
013eaae715
fix: Disable multi window support on Linux by default as it causes issues
...
Fixes #1026
2023-04-10 22:51:21 +02:00
WerWolv
349b5da810
fix: Prevent constants view from growing past the size of the screen
...
Fixes #1025
2023-04-10 21:30:27 +02:00
WerWolv
320629931c
fix: Yet another popup centering issue
2023-04-10 14:10:35 +02:00
WerWolv
dc77d81e1b
feat: Added documentation helper AI
2023-04-10 01:42:53 +02:00
WerWolv
af4dd9f5b0
fix: Popup positioning being wrong
2023-04-09 23:24:48 +02:00
WerWolv
09f1b56964
fix: Popups not being centered correctly
2023-04-09 15:28:48 +02:00
WerWolv
21f38974a8
impr: Use smart pointers to allocate Views
2023-04-08 12:08:45 +02:00
WerWolv
ac858b37ed
fix: Main Menu items not being clickable at the outer most pixel
...
Closes #1020
2023-04-08 11:37:42 +02:00
WerWolv
80edaea392
impr: Update all of ImHex to the new popup system
2023-04-08 00:58:53 +02:00
WerWolv
9c9ac23818
feat: Added a much more flexible popup system
2023-04-07 10:21:27 +02:00
WerWolv
d92e7d19cc
fix: Submenu items ignoring enabled flag
2023-04-06 22:33:02 +02:00
WerWolv
7c18ad49ae
impr: Allow windows that overlap the main window title bar to be movable
2023-04-06 14:58:05 +02:00
WerWolv
722f6315c4
impr: Make sure shortcuts can't be used when popups are open
2023-03-31 11:07:53 +02:00
Thomas
725e32250b
fix: Move config files to XDG_CONFIG_HOME ( #993 )
...
This pull request changes Config Directories on Linux to only include
the XDG_CONFIG_HOME directory, as opposed to all directories in
XDG_DATA_DIRS before (introduced in
https://github.com/WerWolv/ImHex/pull/644/files#diff-c1a4d2b63fed168a9a3568944e9cadeae096f2ddcec3649e4a9b2d29fd104be0L162-L166 ).
Reasons:
- This changes the location of the config file to the standard directory
meant for configurations
- This prevents the config file from being read/written in system
locations, like /usr/share
This PR also includes a migration task that will run on Linux and move
config/GUI dimensions to the new directory
as a bonus, as discussed on discord, it writes the logs to a Data
directory instead of a Config directory
2023-03-26 11:02:23 +02:00
WerWolv
635173e55a
impr: Make sure themes are added correctly when downloaded from the store
2023-03-23 20:35:16 +01:00
WerWolv
15be24db62
sys: Updated to use the new HttpRequest helper instead of Net
2023-03-23 11:23:07 +01:00
WerWolv
8c5fd021f7
api: Hook up new http wrapper to the rest of ImHex
2023-03-22 23:05:18 +01:00
WerWolv
57a62d0544
impr: Clean up entire API and added doc comments
2023-03-21 15:33:43 +01:00
WerWolv
53afa6ea43
fix: Crash on exit
2023-03-20 15:18:48 +01:00
WerWolv
39e8d557e8
sys: Completely revamped main menu item system
2023-03-20 13:11:43 +01:00
WerWolv
e00b59c393
fix: Properly discard reopened stderr
2023-03-18 11:47:42 +01:00
WerWolv
7c1e33dde6
sys: Prevent libraries from printing garbage to the console through stderr
2023-03-18 11:35:01 +01:00
WerWolv
4c1a24058c
ui: Fixed various scaling inconsistencies on higher scaling factors
2023-03-17 19:58:08 +01:00
WerWolv
daadc2ea71
impr: Attempt loading of full unicode plane from font if possible
2023-03-14 12:30:28 +01:00
WerWolv
fb2e668589
sys: Moved more functions to libwolv
2023-03-12 18:43:05 +01:00
WerWolv
0dafb3d230
sys: Replaced many helper functions with libwolv
2023-03-12 18:27:33 +01:00
WerWolv
21dc65f42a
impr: Added comments everywhere in main application
2023-02-17 12:03:53 +01:00
WerWolv
279e085887
impr: Don't create a new font texture for no reason
2023-02-17 12:03:00 +01:00
WerWolv
d84dfa2c42
feat: Allow custom CA Certs to be loaded
...
Fixes #907
2023-02-17 12:01:46 +01:00
WerWolv
ac83bbeb0e
feat: Added a theme manager view to make it easier to make new themes
2023-02-16 18:06:40 +01:00
WerWolv
8cb76a26c1
fix: Font being scaled too big
2023-02-16 16:29:41 +01:00
WerWolv
20da22d59e
sys: Make sure scrolling counts as an input event
2023-02-16 08:53:23 +01:00
WerWolv
3003dea409
fix: Occasional error when loading recent files
2023-02-12 17:52:09 +01:00
WerWolv
54ef5785cd
fix: ImNodes double free
2023-02-12 17:38:13 +01:00
WerWolv
303dd28c7c
fix: Fix macOS build again
2023-02-08 14:11:42 +01:00
WerWolv
dd87dc7046
fix: Building on macOS
2023-02-08 13:51:56 +01:00
WerWolv
235a64deef
sys: One more attempt to fix macOS scaling issues
2023-02-08 12:53:34 +01:00
WerWolv
b936a28921
fix: Opening files from command line not working
2023-02-06 07:11:21 +01:00
WerWolv
941c7ee61d
fix: Still properly divide scaling by 2.0 on macOS
2023-02-01 23:47:22 +01:00
WerWolv
fd259dcde3
fix: Prevent native scaling from going below 1.0 on macOS
2023-02-01 23:45:07 +01:00
WerWolv
3bad5e1d9c
fix: ImHex still opening files when multiple builtin plugins are detected
2023-01-31 11:38:26 +01:00
WerWolv
8e759d9b5f
feat: Added basic 3D visualizer, moved visualizers to separate file
2023-01-20 21:16:28 +01:00
Nik
48a57cd981
feat: Added stacktrace printing on crashes ( #892 )
...
* feat: Added simple stack trace output
* feat: Added backtrace wrapper
* build: Added libbacktrace include dirs to build
* build: Fixed libbacktrace variables
* build: More backtrace variable fixes
* build: Try to find backtrace include
* build: Get backtrace header from cmake script
* feat: Added backtrace support for execinfo
* feat: Added support for StackWalk on Windows
2023-01-17 21:38:56 +01:00
birdstakes
ca68150970
fix: Frame rate not unlocking correctly ( #890 )
...
m_hadEvent could be set during glfwWaitEventsTimeout and then
immediately cleared before ever being checked.
2023-01-17 08:14:40 +01:00
WerWolv
92f0aa9593
fix: Logs always being saved to user folders
...
Fixes #888
2023-01-16 19:39:00 +01:00
WerWolv
7e17059154
sys: Improved exception debug output
2023-01-16 18:17:13 +01:00
WerWolv
1b56c7ffae
ui: Show task progress in task bar
2023-01-14 14:21:16 +01:00
Thomas
ab29303c2e
sys: Clear project context when closing all providers, Display project name in window title ( #860 )
...
* clear project context when closing all providers
* Show project name on window title
* refactor RequestChangeWindowTitle to RequestUpdateWindowTitle
* add spaces
2023-01-07 17:31:22 +01:00
WerWolv
d86be9d9b3
sys: putenv
sucks. Use setenv
instead
2023-01-07 10:56:03 +01:00
WerWolv
c26bed894b
sys: Add imhex/lib
path to plugin libraries search paths
2023-01-07 10:32:01 +01:00
WerWolv
15f2376c62
sys: Fixed some variable names
2023-01-05 16:27:52 +01:00
WerWolv
ff9048fcf0
fix: Crash on exit
...
Fixes #854
2023-01-05 09:29:33 +01:00
WerWolv
02df578939
build: Fix library linking on non-windows
2023-01-04 13:23:42 +01:00
WerWolv
eb4a1e2692
build: Try to clean up bundled dependencies a bit
2023-01-04 12:34:38 +01:00
WerWolv
b4fa8bebe9
build: Move main romfs to main application
2022-12-29 23:32:40 +01:00
WerWolv
7859a9bb1f
feat: Added native custom theme support
2022-12-29 19:26:00 +01:00
WerWolv
df3d5e38ce
ui: Load in all extended-Ascii and control characters from unifont
2022-12-25 10:01:21 +01:00
WerWolv
f23351f11c
sys: Try to not load unifont if graphics drivers can't handle it
2022-12-14 09:25:37 +01:00
WerWolv
e3f2541fde
sys: Make sure libromfs is never used in libimhex
2022-12-05 15:29:19 +01:00
WerWolv
6e0b92a4de
sys: Added logging for which romfs is being used
2022-12-05 09:31:16 +01:00
WerWolv
3b94a42783
lang: Updated localization system to use a more versatile json format
2022-12-02 12:00:04 +01:00
WerWolv
0f028db856
sys: Don't load any external plugins in debug builds
...
Closes #833
2022-11-25 10:28:05 +01:00
WerWolv
3fccd03bbb
fix: Black screen issues when font atlas got too big
2022-11-14 10:02:34 +01:00
WerWolv
7f0bdea212
fix: Opening multiple files by dragging them onto the window
2022-11-10 11:17:21 +01:00
WerWolv
23ce2ec271
ui: Fixed some more macOS scaling issues
2022-11-08 18:09:48 +01:00
WerWolv
5bbc2fd94c
feat: Added basic UI for the new pl section system
2022-11-07 00:04:47 +01:00
WerWolv
d2705988ac
ui: Potentially fix weird scaling on macOS
2022-11-05 21:49:17 +01:00
WerWolv
291da649c1
ui: Limit window title length
2022-11-04 15:19:24 +01:00
iTrooz_
bececff9e5
feat: Ask the users if they want to check for updates ( #803 )
...
* ask the users for updates
* Only treat 1 as enabled
* Fix formatting
* update locales
* comment to document value
2022-10-29 23:43:40 +02:00
iTrooz_
24c0cc10a1
sys: Load Tips from a local file instead of querying an API ( #797 )
...
* store tips locally
* C++ random implementation
* show one different tip per day
* fix json conversion to string
* put tips.json in builtin romfs
2022-10-27 13:21:54 +02:00
iTrooz_
e76d5854b8
ux: Add a setting to disable loading of unicode characters ( #798 )
...
* Add setting to disable loading of unicode characters
* change message
* set message in other langs
* fix formatting
2022-10-27 13:11:09 +02:00
WerWolv
1eb9858f62
sys: Moved libimhex-rust out of project
2022-10-21 14:55:01 +02:00
WerWolv
37b4d5e7b5
patterns: Updated pattern language
2022-10-20 09:48:06 +02:00
iTrooz_
f3b0971d00
sys: Improve various error messages ( #789 )
...
* Tell the user the net request which failed
* Show signal name
* Print execution time of startup tasks
* replace NULL with nullptr
* change wording for task logs
* Remove '..' from task name
* remove using namespace chrono
2022-10-20 08:28:29 +02:00
WerWolv
8b39c8f219
feat: Make all tool windows be detachable
2022-10-13 10:47:38 +02:00
WerWolv
f0da6ec82f
fix: Crash on exit when ImHex is launched through the terminal
2022-10-07 15:35:26 +02:00
WerWolv
484481f886
fix: Opening files with unicode names through the command line
2022-10-07 10:14:24 +02:00
WerWolv
210106901e
sys: Added setting to disable multi-window support
2022-10-06 21:26:24 +02:00
WerWolv
7f2c60b0d7
fix: Race condition with data inspector
2022-10-05 12:02:40 +02:00
WerWolv
7bb9e7ee82
sys: Replaced awful task system with a much more efficient thread pool
2022-10-04 23:37:48 +02:00
WerWolv
b80517ab15
sys: Improved UTF-8 path handling in various places
...
Fixes #768
2022-10-04 09:10:58 +02:00
WerWolv
b17cd3696c
fix: Handling of exceptions that are not being caught
2022-10-03 10:36:19 +02:00
Nik
9c484e7b57
fix: Various clang / clang-tidy warnings ( #764 )
2022-10-02 17:30:26 +02:00
WerWolv
6a07a2f85d
feat: Look for custom inspector entries in imhex/scripts/inspectors
2022-10-02 14:18:40 +02:00
WerWolv
3504987ab3
sys: Fix OpenGL clear color
2022-10-01 21:14:49 +02:00
WerWolv
ca6a8a7a46
sys: Move resources into their relevant subprojects
2022-09-29 10:33:39 +02:00
WerWolv
9656b40d53
fix: Clearing custom font path not updating setting correctly
2022-09-20 15:47:28 +02:00
WerWolv
e0e2996e25
fix: Custom fonts not being loaded
2022-09-20 14:09:41 +02:00
WerWolv
a55177edfa
fix: Curl SSL context not being thread safe in the slightest
2022-09-19 21:56:43 +02:00
WerWolv
4c01a749de
sys: Improved startup time by running startup tasks in parallel
2022-09-19 16:54:19 +02:00
WerWolv
7b61268f22
ux: Reduce file loading time to basically zero
2022-09-19 16:09:22 +02:00
WerWolv
3cdc8c5884
fix: OpenGL textures not being cleaned up correctly
2022-09-18 20:38:45 +02:00
WerWolv
5462575f5c
sys: Allow multiple files to be opened through the command line
2022-09-15 09:48:02 +02:00
WerWolv
120e2bc300
sys: Fix opening files in existing instance not working on Intel GPUs
2022-09-15 09:47:47 +02:00
WerWolv
13afd96806
fix: Build issues due to invalid capture
2022-09-12 23:45:37 +02:00
WerWolv
aa658b7dbc
sys: Make sure constexpr variables don't get copied onto the stack
2022-09-12 21:28:02 +02:00
WerWolv
dacb64ae66
fix: Window header always displaying (Read Only) after opening a provider
2022-08-22 11:00:31 +02:00
WerWolv
1462a4689d
fix: ImHex crashing on exit
...
Fixes #698
2022-08-20 13:43:26 +02:00
WerWolv
e779285be4
feat: Added basic ability to interrupt long running tasks
2022-08-17 16:15:36 +02:00
WerWolv
aa01d58b33
ui: Increase window size when a bigger font is being used
2022-08-16 11:49:07 +02:00
WerWolv
0c0caf6942
fix: Restarting ImHex not working correctly
2022-08-16 11:48:37 +02:00
WerWolv
29adeae6a3
fix: Undefined behaviour in frame wait time calculation
2022-08-15 22:21:53 +02:00
WerWolv
dea6caccf1
fix: File opening in existing instance not being unicode aware
2022-08-14 13:42:22 +02:00
WerWolv
85f0e04d0e
feat: Allow recents to also display other providers
2022-08-14 10:07:45 +02:00
WerWolv
b580691871
feat: Added Intel Hex and Motorola SREC provider ( #670 )
...
* feat: Initial implementation of an Intel Hex provider
* fix: Reading of bytes from intel hex files
* lang: Added localization for new provider
* ui: Only show file name in intel hex provider name
* feat: Added Motorola SREC provider
2022-08-12 15:11:27 +02:00
eoineoineoin
72c4f50871
fix: Crash when any signal is being thrown ( #669 )
...
This avoids a crash on POSIX after running a command from the command
pallete; on completion, a SIGCHILD will be raised, which was incorrectly
calling the error handler and terminating ImHex.
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
2022-08-12 11:33:20 +02:00
WerWolv
d55c59c796
feat: Added close button for welcome screen
2022-08-10 10:28:40 +02:00
WerWolv
19a0dc80db
fix: Window title not always updating correctly
2022-08-10 00:11:16 +02:00
WerWolv
ceb26add15
sys: Added better support for Windows 7
2022-08-09 16:29:52 +02:00
WerWolv
d4af07ed51
sys: Improved signal handling
2022-08-09 15:00:16 +02:00
WerWolv
8ebbe6fb4e
patterns: Fixed crash when preprocessor throws an error
2022-08-09 08:58:31 +02:00
WerWolv
966f3b8597
sys: Replace existing bad project system with a much better one ( #663 )
...
* sys: Initial effort to replace existing project files with a better system
* sys: Added back marking provider as dirty
* sys: Remove git commit information from project files
* sys: Format data processor save file nicely
* fix: Automatic pattern loading not working correctly
* ui: Added warning popup when closing a provider with modifications
Closes #604
* sys: Fixed build issues
* tests: Removed useless debug logs
* patterns: Updated pattern language
* sys: Added log message when crashing with a signal
* sys: Make sure abnormal termination handlers are being called more reliably
2022-08-08 21:23:52 +02:00
WerWolv
6cb22ea75b
sys: Unlock framerate when keys are pressed
2022-08-05 10:55:53 +02:00
WerWolv
5a41be48c3
build: Disable restrict warning
2022-08-05 08:32:08 +02:00
WerWolv
12547a7c8c
fix: Memcpy restrict error
2022-08-05 08:10:35 +02:00
WerWolv
a1a3fcbe65
ui: Improved footer item displaying
2022-08-04 11:00:49 +02:00
WerWolv
0f8ac672f3
sys: Fixed compile issue on non-Windows
2022-08-04 09:51:07 +02:00
WerWolv
be37228dc6
sys: Fixed resize cursors not appearing in non-borderless window mode
2022-08-04 09:46:17 +02:00
WerWolv
deabacbd50
sys: Updated ImGui, ImPlot and imnodes to latest versions
2022-08-03 23:32:34 +02:00
WerWolv
ace25d353b
fix: GLFW error on exit
2022-08-03 10:45:50 +02:00
WerWolv
c8edb6ec6c
sys: Revert GLSL version back to 150 on macOS
...
Fixes #632
2022-08-02 13:12:12 +02:00
WerWolv
de910acbf2
sys: Revert OpenGL version back to 3.2 on macOS because Apple doesn't like 3.0
...
Fixes #632
2022-08-02 08:24:56 +02:00
WerWolv
0074b0be7e
sys: Lowered required OpenGL version to 3.0 as well
2022-08-01 23:33:35 +02:00
WerWolv
f94b36f415
sys: Lowered required GLSL version to OpenGL 3.0
2022-08-01 23:26:40 +02:00
WerWolv
59449bbe47
fix: Portable version detection not working correctly
2022-08-01 23:25:13 +02:00
WerWolv
b8c034f8c5
sys: Prevent portable Windows version from writing to AppData
...
Fixes #627
2022-08-01 14:51:40 +02:00
WerWolv
3d5568f65f
sys: Fixed global shortcuts not working correctly
...
Fixes #606
2022-07-30 22:01:49 +02:00
WerWolv
7a4541dac7
ui: Change the provider selector from a dropdown to a tab bar
2022-07-30 21:25:18 +02:00
WerWolv
376cf6e8fa
git: Updated readme feature list a bit
2022-07-30 11:43:25 +02:00
WerWolv
24c243bcf6
sys: Reset settings if it cannot be parsed anymore
2022-07-30 11:19:56 +02:00
WerWolv
5c3a0cc654
ui: Fix window on macOS appearing really small
...
#551
2022-07-30 11:12:33 +02:00
WerWolv
6f3a5e896c
sys: Fixed hidpi framebuffer scaling
...
Actually fixes #598
2022-07-29 17:37:30 +02:00
WerWolv
fb4c21b97a
build: Fix weird macOS build errors ( #591 )
...
* cleanup
* Remove prints
2022-07-26 14:59:08 +02:00
WerWolv
3aa1dd1e06
build: Added usp10 library to maybe provide Windows 7 support
2022-07-07 23:30:09 +02:00
WerWolv
c8b7f350ad
ui: Fix rendering and default view initializing
2022-07-07 07:16:38 +02:00
WerWolv
541f1d5550
ui: Fixed positioning of UI
2022-07-06 16:40:30 +02:00
WerWolv
1354c913a4
fix: UI stuttering when resizing or restoring window
2022-07-06 11:30:06 +02:00
WerWolv
4cd390ab02
fix: Various more unicode issues
2022-07-05 00:00:00 +02:00
WerWolv
de269e7a48
sys: Remove remaining references to hex.builtin from libimhex
2022-07-02 17:53:13 +02:00
WerWolv
0ed885fe0f
sys: Removed all references to hex.builtin from main application
2022-07-02 16:22:38 +02:00
WerWolv
2d982e2088
fix: Drastically improve pattern highlighting performance
2022-07-01 19:05:53 +02:00
WerWolv
bb429aae62
fix: Theme detection issues on all OSes
2022-06-30 15:09:57 +02:00
WerWolv
673027c82d
fix: Crash on exit
2022-06-27 17:01:21 +02:00
WerWolv
3471b314dd
build: Switch to GCC on MacOS ( #552 )
...
* build: Experimentally switch to gcc on macOS
* build: Corrected gcc paths
* build: Enable objective c support on macOS
* build: Enable ObjC and ObjC++ on macOS
* build: Add ObjC and ObjC++ flags
* build: Try compiling objc with clang
* build: Remove invalid flags again
* fix: Let's not include objc headers in C++ code
* sys: Move macos utils code to its own file
* fix: Missing unistd include on mac
* sys: Removed loader script stuff since it's currently unused and broken
* fix: Missing include
* fix: Another missing include
* fix: CFURLCreateWithBytes wants a pointer to mutable data
* fix: Try disabling name mangling of ObjC functions
* sys: Move macos utils declarations to its own header file
* fix: C Linkage
* fix: Move objc function prototypes to C++ headers
* fix: More missing includes
* fix: Warning error
* sys: Call ObjC with C ABI instead of trying to use C++
* build: Update libraries
* sys: Fixed build errors
* sys: No const correctness I guess
* sys: Fixed prototypes
* sys: This is C now
* sys: More nullptr -> NULL
* sys: Fix crash on exit
* sys: Try using proper std concepts instead of custom ones
* sys: Replaced another hex::is_signed
* build: Upgrade to gcc 12 and MacOS Monterey
* build: Fixed MacOS runner name
* build: Cache correct ccache folder on macOS
2022-06-25 12:19:59 +02:00
Polshakov Dmitry
f243ac7464
fix: correctly show checked plugin files ( #529 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-06-09 15:58:40 +02:00
WerWolv
bf1441223c
fix: Crash when no monitors have been defined by the OS
2022-06-03 10:35:47 +02:00
WerWolv
4fd8ada4ff
fix: Crash on exit
2022-05-28 16:33:52 +02:00
WerWolv
b751f98e91
ui/ux: Rewrite of the entire hex editor view to make it more flexible ( #512 )
...
* ui/ux: Initial recreation of the hex editor view
* ui/ux: Added back support for editing cells
* ux: Make scrolling and selecting bytes feel nice again
* ui/ux: Improved byte selecting, added footer
* sys: Make math evaluator more generic to support integer only calculations
* patterns: Moved value formatting into pattern language
* ui/ux: Added Goto and Search popups, improved selection
* ui: Added better tooltips for bookmarks and patterns
* sys: Use worse hex search algorithm on macOS
Sadly it still doesn't support `std::boyer_moore_horsepool_searcher`
* ui: Added back missing events, menu items and shortcuts
* fix: Bookmark highlighting being rendered off by one
* fix: Various macOS build errors
* fix: size_t is not u64 on macos
* fix: std::fmod and std::pow not working with integer types on macos
* fix: Missing semicolons
* sys: Added proper integer pow function
* ui: Added back support for custom encodings
* fix: Editor not jumping to selection when selection gets changed
* ui: Turn Hexii setting into a data visualizer
* sys: Added back remaining shortcuts
* sys: Remove old hex editor files
* sys: Moved more legacy things away from the hex editor view, updated localization
* fix: Hex editor scrolling behaving weirdly and inconsistently
* sys: Cleaned up Hex editor code
* sys: Added selection color setting, localized all new settings
* fix: Search feature not working correctly
* ui: Replace custom ImGui::Disabled function with native ImGui ones
* ui: Fix bookmark tooltip rendering issues
* fix: Another size_t not being 64 bit issue on MacOS
2022-05-27 20:42:07 +02:00
WerWolv
17383083fb
patterns: Use standalone pattern language library instead of built-in one
2022-04-17 16:57:30 +02:00
WerWolv
0462cc3d0c
sys: Enable -Wall, -Wextra, -Werror and fix all warnings on all Platforms ( #483 )
...
* sys: Make ImHex compile with -Wall -Wextra -Werror
* sys: Fixed various build errors on Linux
* sys: Explicitly ignore return value of `system` function
* sys: More fixes for the warnings GitHub Actions enables somehow
* sys: More fixes
* sys: Remove -Werror again to see all GitHub Actions warnings
* sys: Hopefully fixed all remaining warnings
* sys: Added back -Werror
* git: Change windows icon in GitHub Actions
2022-03-27 00:01:28 +01:00
WerWolv
f7cfee55d5
ui: Enable multi viewports on Linux again if you're not on Wayland
2022-03-22 08:20:14 +01:00
WerWolv
844845223f
fix: Saving interface.ini file failing if imhex is installed in a non-writable location
...
Fixes #473
2022-03-16 13:23:36 +01:00
WerWolv
caad8c25ad
sys: Prevent splash screen from creating a imgui.ini save file
...
Fixes #467
2022-03-13 17:36:50 +01:00
WerWolv
97bfb4004b
fix: Crash when custom font file can't be found
...
Fixes #468
2022-03-13 17:11:02 +01:00
WerWolv
327e904dbc
sys: Fixed many clang tidy warnings and typos
2022-03-04 20:52:39 +01:00
WerWolv
2739320f10
sys: Refactor of filesystem functions. Fixed crashes where fs errors weren't caught correctly
...
Addresses the crash mentioned in #462
2022-03-04 11:36:37 +01:00
WerWolv
5a02c38fcd
store: Fixed more download issues when some folders don't have write perms
2022-02-28 23:10:04 +01:00
WerWolv
66d1b3fd2f
patterns: Huge refactor of Pattern Language runtime to use smart pointers ( #458 )
...
* patterns: Initial work to refactor pattern language to use smart pointers
* patterns: Fixed remaining issues, moved patterns to unique files
* sys: Added missing includes for macOS
2022-02-27 23:25:39 +01:00
WerWolv
bdb2ac3a0b
fix: imgui.ini file being created in the working directory sometimes
...
Fixes #450
2022-02-21 21:55:04 +01:00
WerWolv
75bd7805c9
ux: Added custom font and font size setting to settings menu, improve rebooting behaviour
2022-02-21 21:46:25 +01:00
WerWolv
60a717365c
ui: Remove unifont glyphs from the ASCII range
2022-02-18 16:19:12 +01:00
WerWolv
faaa90fa0d
fix: Borderless window mode getting enabled when it shouldn't
2022-02-17 15:22:29 +01:00
WerWolv
7117592f38
sys: Add highlighting provider function support, move pattern highlighting code out of hex editor
2022-02-16 14:57:13 +01:00
WerWolv
60af9970c1
fix: Opening files with unicode characters in their path
2022-02-16 10:04:05 +01:00
WerWolv
33a1e7f055
sys: Added setting to override borderless window mode even on Intel
2022-02-15 23:07:48 +01:00
WerWolv
f72e9700ab
sys: Move Windows theme detection to Windows plugin
2022-02-15 22:50:04 +01:00
WerWolv
4357d68462
sys: Automatically disable borderless window mode if Intel CPU is used
2022-02-15 22:36:36 +01:00
WerWolv
f1c7dea0ab
build: Fix Icon on macOS ( #417 )
...
* build: Try to fix macOS icon
* add debugging
* Copy icon file manually
Fixes #414
2022-02-06 22:29:16 +01:00
WerWolv
2577a2f637
ux: Fixed docking to main window
2022-02-06 21:39:10 +01:00
Robin Lambertz
6bdd114b99
build: Fix DEBUG without GIT_* variables defined ( #416 )
...
When building ImHex in debug mode outside of a git repo, the build would fail due to missing GIT_ variables.
2022-02-06 13:52:51 +01:00
WerWolv
ca57f91bfa
nodes: Added Digram visualizer node
2022-02-05 22:19:32 +01:00
WerWolv
f9668f4ba6
fix: Crash on exit
2022-02-04 00:47:39 +01:00
WerWolv
df1d302bcb
sys: Added time and source to logger output
2022-02-02 17:19:50 +01:00
WerWolv
4c51efc5e0
pattern: Improved parsing of integer literals, added support for hex floats
2022-02-02 16:03:18 +01:00
WerWolv
876dbe8179
sys: Final cleanup to get rid of everything builtin in the main application
2022-02-02 00:36:09 +01:00
WerWolv
f76e65a58d
ux: Added better checks and help messages for missing or duplicate plugins
2022-02-01 23:57:48 +01:00
WerWolv
6977061227
ux: Fixed tips popup and properly apply default layout on first start
2022-02-01 23:33:42 +01:00
WerWolv
ce59226909
sys: Reformat all
2022-02-01 22:09:44 +01:00
WerWolv
1991afb87b
sys: Get rid of SharedData struct and cleanup code structure ( #411 )
...
* sys: Initial refactoring of the SharedData class
* sys/pattern: More refactoring, make every provider have its own patterns
* sys: Finished up refactoring. No more SharedData!
* sys: Fixed compile on Unix
* tests: Fixed unit tests
* sys: Moved view and lang files
* pattern: Added assignment operator support to for loops
* tests: Fixed compile issue
2022-02-01 18:09:40 +01:00
WerWolv
3f5b258629
ux: Auto focus goto and find text box. Execute function on enter
2022-01-29 21:49:15 +01:00
WerWolv
0e08b0226b
sys: Added clang-format file, formatted entire project
2022-01-24 20:53:17 +01:00
WerWolv
541c0d7547
build/plugin: Make plugins no longer depend on their file name
2022-01-23 23:28:56 +01:00
WerWolv
9cf7fc4a2e
store: Added encoding files to store, fixed crash when folder doesn't exist
2022-01-23 21:52:24 +01:00
WerWolv
8397af5c9b
api: Make main menus use the same priority API
2022-01-23 20:45:51 +01:00
WerWolv
714d421334
api: Moved menu item adding to a new registry-type API
2022-01-23 11:54:21 +01:00
WerWolv
48aacc0c2e
sys: (s8, s16, s32, s64, s128) -> (i8, i16, i32, i64, i128)
2022-01-22 22:37:52 +01:00
WerWolv
89b9d21eaa
ux: Make splash screen not always be on top anymore
...
Fixes #402
2022-01-22 22:08:25 +01:00
WerWolv
4e047beabb
ui/api: Added sidebar
2022-01-22 22:03:54 +01:00
WerWolv
9ddd97a6eb
provider: Added insert bytes feature
2022-01-20 23:24:26 +01:00
WerWolv
ee8b665472
ui: Added API to add custom layouts, imhex application and api cleanup
2022-01-18 00:10:10 +01:00
WerWolv
c4cbcc7232
ui: Fix horrible scaling on MacOS
2022-01-17 20:29:09 +01:00
WerWolv
8701e0f402
sys: Log to a file when ImHex wasn't opened though a terminal
2022-01-17 20:06:00 +01:00
WerWolv
a70ece7b9c
sys: Bunch of cleanup, use fs::path instead of std::string for paths
2022-01-16 01:51:31 +01:00
WerWolv
ed8ee35a86
ui: Fixed sizing of several popups
2022-01-16 00:48:35 +01:00
WerWolv
abac42826c
fix: Many security and format issues
2022-01-15 14:14:53 +01:00
WerWolv
d8219ad971
build: Cleaned up cmake build structure ( #399 )
...
* build: Cleanup build process, move main application to /main folder
* build: Try fixing MacOS bundling
* build: Fixed swapped parameters
* build: One imhex -> main too much
* build: Move resources to a better location
* build: Try to fix macos bundle creation
* build: More bundle fixes
* build: Fixed syntax
* build: Another try
* build: Added macos debugging stuff
* build: Fix bundle path
* build: Removed duplicated adding of Frameworks folder to rpath
* build: Removed debugging
2022-01-15 00:14:12 +01:00