WerWolv
b8c034f8c5
sys: Prevent portable Windows version from writing to AppData
...
Fixes #627
2022-08-01 14:51:40 +02:00
gudzpoz
eca5fb894f
feat: Added LEB128 in data inspector ( #615 )
...
* feat: Added LEB128 in data inspector
* feat: Added support for editing LEB128 values
* Moved LEB functions from utils.cpp to crypto.cpp
* Added placeholders for translations
* Made DataInspector::impl::Entry.maxSize mandatory
* Fixed undefined leftshifting behaviour
2022-08-01 13:20:20 +02:00
WerWolv
4d3538781b
sys: Copy pattern source code from current provider to newly created one
2022-07-31 11:09:20 +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
004cab13dc
sys: Replaced many info logs with debug logs
2022-07-30 11:26:51 +02:00
WerWolv
24c243bcf6
sys: Reset settings if it cannot be parsed anymore
2022-07-30 11:19:56 +02:00
WerWolv
419a2875b3
sys: Added filter option to find view
2022-07-29 18:49:43 +02:00
WerWolv
6f3a5e896c
sys: Fixed hidpi framebuffer scaling
...
Actually fixes #598
2022-07-29 17:37:30 +02:00
WerWolv
1b68ea4eba
sys: Prevent providers from being modified when any async task is running
2022-07-29 11:35:29 +02:00
catsout
3b8b95a22f
fix: Add Config/DataHomeDir paths before Config/DataDirs paths ( #586 )
...
fix not saving to "XDG_DATA_HOME", when "XDG_DATA_DIRS" is available.
fix "Content Store" persist in flatpak.
XDG specification specifies how to find config and data directories on
linux systems. Specifically, it says this:
- Data should be written to $XDG_DATA_HOME
- Config should be written to $XDG_CONFIG_HOME
- Data should be read from $XDG_DATA_HOME:$XDG_DATA_DIRS
- Config should be read from $XDG_CONFIG_HOME:$XDG_CONFIG_DIRS
2022-07-25 12:08:10 +02:00
WerWolv
c1a2697e42
ui: Added filter to bookmarks view
2022-07-23 20:38:38 +02:00
WerWolv
499b68b7ad
build: Updated nativefiledialog library
2022-07-16 13:26:07 +02:00
WerWolv
5ee3b550bc
ui: Fixed advanced decoding cell sizes
2022-07-16 12:14:06 +02:00
WerWolv
461c5eac3e
fix: Crash when closing the file picker without picking a file
2022-07-07 23:28:40 +02:00
WerWolv
c752fba1c4
ui: Added backdrop image when no views are open
2022-07-06 11:30:06 +02:00
WerWolv
d40a445f33
build: Updated various dependencies
2022-07-06 11:30:06 +02:00
WerWolv
31a746f3fc
fix: Issue opening files that contain special characters on Linux
...
This is a (hopefully temporary) hack. Fixes #568
2022-07-06 11:29:24 +02:00
WerWolv
e981fa53f3
fix: std::u8string usage with nlohmann::json
2022-07-05 09:01:09 +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
f9fc7051fc
tests: Added UTF-8 file operation tests
2022-07-02 10:05:25 +02:00
Shiroki Satsuki
ef5fbba56b
feature: Added network proxy support for hex::Net ( #562 )
...
* feat(i18n): update Chinese(Simplified) translation
* feat: proxy setting
* refactor: add hex::Net::setProxy
* fix: undefined symbol: hex::Net::m_proxyUrl
* style: m_proxyUrl -> s_proxyUrl
2022-07-01 14:05:32 +02:00
WerWolv
3db50a690c
fix: Various issues with UTF-8 paths
2022-06-30 19:39:06 +02:00
WerWolv
96aa929c31
fix: Removed additional }
2022-06-30 15:33:21 +02:00
WerWolv
e07fc76abf
fix: MacOS include
2022-06-30 15:28:51 +02:00
WerWolv
f01e227c87
sys: Added missing macOS includes
2022-06-30 15:20:13 +02:00
WerWolv
bb429aae62
fix: Theme detection issues on all OSes
2022-06-30 15:09:57 +02:00
WerWolv
19f99bab0c
fix: Issues when opening files with unicode names
2022-06-30 14:57:05 +02:00
WerWolv
1f433fc36d
sys: Fixed byte units
2022-06-30 11:43:40 +02:00
WerWolv
034cc0cd2f
ui: Improved byte selection text
2022-06-30 11:29:20 +02:00
WerWolv
ac964dc5ec
fix: Path handling and plugin loading breaking with non-ASCII paths
2022-06-29 21:34:17 +02:00
WerWolv
673027c82d
fix: Crash on exit
2022-06-27 17:01:21 +02:00
WerWolv
a936cf1ce4
fix: Another file read issue
2022-06-27 15:08:22 +02:00
WerWolv
5800546369
fix: Tar extraction and file string read error
2022-06-27 14:58:40 +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
662d80abea
feat: Add ability to remove bytes ( #531 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-06-17 14:21:56 +02:00
WerWolv
6b7ade8d61
fix: MacOS build error
2022-06-17 10:42:54 +02:00
WerWolv
9b77d7b5e2
fix: MacOS build error
2022-06-17 10:31:28 +02:00
WerWolv
1785088456
fix: MacOS looking for plugins in wrong folder inside of bundle
...
Hopefully addresses #539
2022-06-17 10:23:28 +02:00
WerWolv
5e67a1f27b
sys: Refactor tar file operations into their own class
2022-06-16 15:42:08 +02:00
WerWolv
d1d73bcff6
fix: Editing bytes in the hex editor being broken
...
Fixed #521
2022-06-03 10:53:03 +02:00
WerWolv
fe6be686b7
ui/ux: Complete rewrite of the Hash view
2022-05-30 16:36:46 +02:00
WerWolv
f1b2d5881e
tools: Added IEEE 756 floating point number tester
2022-05-29 14:57:59 +02:00
WerWolv
088205385f
fix: Workaround that broke functionality. Instead disable warnings
...
This actually fixes #515 for now
2022-05-28 16:19:08 +02:00
WerWolv
39c743631b
fix: Weird build error on GCC 12.1.0 again
...
This fixes #515
2022-05-28 15:46:39 +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
c4b7d89713
fix: Random build errors with GCC 12.1.0
2022-05-17 20:46:42 +02:00
WerWolv
17383083fb
patterns: Use standalone pattern language library instead of built-in one
2022-04-17 16:57:30 +02:00
WerWolv
457d338a97
ui: Include null byte in InputText fields
2022-04-14 15:29:54 +02:00
WerWolv
74a5c974e6
patterns: Fixed comments behind pre-processor defines
2022-04-07 13:15:07 +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
4b6a76bf02
fix: Bookmarks not always creating new highlights correctly
2022-03-26 16:54:15 +01:00
WerWolv
368c943040
patterns: Added default parameters
2022-03-24 20:31:45 +01:00
WerWolv
c09d85f46d
patterns: Allow forward declaring of types
2022-03-24 16:57:12 +01:00
WerWolv
c2803fe1e2
sys: Fixed build errors and warnings on Unix
2022-03-22 09:34:26 +01:00
WerWolv
98dfc2e286
sys: Replace __builtin_unreachable() with hex::unreachable()
2022-03-22 09:08:34 +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
Polshakov Dmitry
937ccbc5bd
patterns: Restore data offset for local variables / added array, nested structs and functions tests ( #475 )
...
* fix(eval): restore data offset for local variables
* test(pattern_lang): add tests for arrays, nested structs and functions
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-03-20 21:42:21 +01:00
WerWolv
2d87d29fa0
patterns: Fixed recursive types
2022-03-17 00:10:16 +01:00
WerWolv
29ded2483c
sys: Make sure deferred call adding is thread safe
2022-03-15 23:46:02 +01:00
WerWolv
327e904dbc
sys: Fixed many clang tidy warnings and typos
2022-03-04 20:52:39 +01:00
WerWolv
efe6137067
ui: Improved look of the about page
2022-03-04 19:06:29 +01:00
WerWolv
6a517feda3
sys: More Linux and macOS build fixes
2022-03-04 14:00:02 +01:00
WerWolv
3b7a928313
sys: Fixed missing includes on Unix
2022-03-04 11:44:11 +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
8b2dcf976f
patterns: Fixed auto parameter crash
2022-03-03 13:34:05 +01:00
WerWolv
949a26ca0e
patterns: Fixed memory leak when using format
attribute
2022-03-03 12:11:47 +01:00
WerWolv
39da62532b
fix: Trailing zero at end of string input buffers
2022-03-03 09:27:27 +01:00
WerWolv
483ba95d80
fix: Some text boxes not being writable
2022-03-03 09:24:09 +01:00
WerWolv
174cf3ed95
fix: Crash when entering too much text in various text boxes
2022-03-01 16:12:00 +01:00
WerWolv
e4a3181e1d
fix: Crash when saving projects
2022-03-01 00:03:39 +01:00
WerWolv
b57730c28b
sys: Disable buffering on log files
2022-03-01 00:03:28 +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
Lukas Cone
2847098020
patterns: Added bitfield_order pragma ( #457 )
2022-02-28 00:07: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
b28eaf2dbf
sys: Catch error produced in file size querying
2022-02-26 17:15:35 +01:00
WerWolv
191a99f91b
fix: Crash when trying to read from an empty file or a directory
2022-02-26 16:43:38 +01:00
WerWolv
f3f1ac939a
fix: Executable directory not getting added to paths correctly on Linux
2022-02-26 16:25:15 +01:00
WerWolv
e3fbb490df
fix: ImHex not properly loading plugins on first launch
2022-02-26 00:10:23 +01:00
WerWolv
1487f760b0
build: Bundle files from the ImHex-Patterns repo with the installation
2022-02-21 22:47:56 +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
ef8e9a83bb
patterns: Properly treat arrays and custom types as references
2022-02-21 20:00:54 +01:00
WerWolv
7d9c24ff51
net: Increase store load timeout to 30 seconds
2022-02-21 18:57:53 +01:00
WerWolv
2e95184d30
patterns: Allow variables to be named the same as types
2022-02-20 20:50:02 +01:00
Lukas Cone
26f998ecb6
feature: User now can add custom directories ( #444 )
...
* feat: user directories
* ux: show setting categories in order they were created
* feat: add descriptable setting categories
2022-02-18 22:34:54 +01:00
Polshakov Dmitry
39cc845df3
Fix crash on typing "#include " ( #446 )
...
* fix: scan include name until end of line
* fix: correctly check file existance
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-18 13:32:05 +01:00
WerWolv
7e075e5ebb
sys: Added editing support for strings and chars in the data inspector
2022-02-17 14:43:04 +01:00
WerWolv
b9508d853e
build: Fixed building and loading of Rust plugins
2022-02-17 11:42:56 +01:00
WerWolv
90753f4d42
sys: Fixed logging to file omitting all tags and new lines
2022-02-16 21:31:47 +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
d6b887b7db
sys: Added basic editing support to data inspector
2022-02-15 21:50:27 +01:00
Polshakov Dmitry
038b7961db
pattern: Fix scopes not always getting popped again correctly ( #440 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-14 20:44:43 +01:00
Polshakov Dmitry
24f3b8dd3d
pattern: Make preprocessor not drop defines after include ( #433 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-13 11:50:13 +01:00
Polshakov Dmitry
63455ce2be
fix: don't change list while iteration ( #434 )
...
Co-authored-by: Dmitry Polshakov <dmitry.polshakov@dsr-corporation.com>
2022-02-12 15:39:47 +01:00
WerWolv
57f31123e7
pattern: Cleanup log console a bit
2022-02-11 16:53:01 +01:00
WerWolv
28e5f62c60
fix: ImU64 is somehow not the same as u64 on Linux
2022-02-08 22:25:25 +01:00
WerWolv
586bca4bf6
ui: Make hexadecimal prefix slightly darker than rest of text
2022-02-08 22:19:54 +01:00
WerWolv
bd30411ba7
ui: Replaced all hex input textboxes with the new ones
2022-02-08 21:51:09 +01:00
WerWolv
1b95722757
ui: Added hexadecimal input text box
2022-02-08 21:10:48 +01:00
WerWolv
abd3fe6ed1
sys/ux: Improved selection requests
2022-02-08 18:38:54 +01:00
WerWolv
137bfe48ca
pattern: Fixed precedence of comparison operators
2022-02-07 21:37:10 +01:00
WerWolv
99f8efac9a
pattern: Fixed pragma once memory corruption
2022-02-06 15:28:20 +01:00
WerWolv
d42d87280d
pattern: Allow pattern function code to be executed separately
2022-02-06 00:18:04 +01:00
WerWolv
b8026398e0
pattern: Allow variable placements inside of structs
...
Fixes #364
2022-02-05 23:34:52 +01:00
WerWolv
cff8bab3d3
pattern: Allow assigning to global variables inside of structs
2022-02-05 23:20:44 +01:00
WerWolv
5c3bfa690b
pattern: Improved error messages when including std files or calling unknown std functions
2022-02-05 23:02:38 +01:00
WerWolv
8ab4d25e33
ux: Only show file chooser popup when there's files in the the relevant folder
2022-02-05 22:35:42 +01:00
WerWolv
eade95dff7
fix: Pattern source code being deleted when closing a provider
2022-02-05 22:26:00 +01:00
WerWolv
618eead341
sys: Drastically improve highlighting performance
2022-02-04 00:29:47 +01:00
WerWolv
c2bcbfb1e0
pattern: std::from_chars is not widely supported and doesn't support u128...
2022-02-02 17:12:19 +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
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
61fc479c79
pattern: Fixed many code inconsistencies and bugs
2022-01-31 14:37:12 +01:00
WerWolv
af57b39d8f
pattern: Added #pragma once to prevent multi-includes of files
2022-01-30 17:49:18 +01:00
WerWolv
6a724352b0
pattern: Fixed sizeof and addressof operator parsing
2022-01-30 17:48:20 +01:00
WerWolv
69bd438fe1
pattern: Added parameter packs
2022-01-30 15:18:45 +01:00
WerWolv
dd572ba024
sys: Return std::nullopt instead of {} for empty optional values
2022-01-30 12:43:43 +01:00
WerWolv
4bc074fa84
sys: Remove patched bytes when their value is the same as the original
2022-01-30 11:58:32 +01:00
WerWolv
bfa3538745
pattern: Fixed color overriding of struct members when struct has a color set already
...
Fixes #409
2022-01-29 22:17:51 +01:00
WerWolv
da16be7ad8
net: Use system certificate on Linux and MacOS
2022-01-29 13:40:17 +01:00
WerWolv
7b1a146976
pattern: Fixed crashes, removed reference to evaluator in every pattern
2022-01-29 12:40:49 +01:00
WerWolv
75331cda94
pattern: Added compound assignment operators
2022-01-29 04:16:32 +01:00
WerWolv
a0a39f1c04
pattern: Added dollar operator assignment
2022-01-29 03:06:34 +01:00
WerWolv
0e08b0226b
sys: Added clang-format file, formatted entire project
2022-01-24 20:53:17 +01:00
WerWolv
65212f22a6
pattern/ux: Added copying support to console, clip content, removed prefix
2022-01-24 00:45:46 +01:00
WerWolv
b3a8d02d19
lang: Don't hardcode fallback language anymore
2022-01-23 22:08:19 +01:00
WerWolv
49610f59ea
ux: Added interface to choose encoding files more easily
2022-01-23 21:52:43 +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
4e047beabb
ui/api: Added sidebar
2022-01-22 22:03:54 +01:00
WerWolv
d69eb440d8
pattern: Fixed memory leak when using conditionals in structs
2022-01-22 22:03:37 +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
8701e0f402
sys: Log to a file when ImHex wasn't opened though a terminal
2022-01-17 20:06:00 +01:00
WerWolv
40d7e4aa6e
build: More repo cleanup, move libimhex and external libs to /lib folder
2022-01-16 14:20:52 +01:00