Commit Graph

5595 Commits

Author SHA1 Message Date
WerWolv
45b08b6010 impr: Enable some of the new ImGui configs 2025-08-09 16:22:07 +02:00
WerWolv
c88fc43032 fix: Crash on exit if update folder doesn't exist 2025-08-09 16:21:51 +02:00
Artem Garmash
08a08c2b3a impr: Better "File too large" banner wording (#2394)
Improve the wording of the localized string
2025-08-09 15:08:05 +02:00
WerWolv
411e971ba7 impr: Properly delete old update files 2025-08-09 14:28:48 +02:00
WerWolv
dbc5819bc4 fix: Handling of unchanged shortcut keys 2025-08-09 14:23:36 +02:00
Ivor Wanders
93a71120d4 fix: Initialise splash window with correct size (#2390)
With an initial Window size of 1 by 1, the program aborts during launch
on my Debian 12 (bookworm) system running the Mate Desktop environment
on X11.


The exception from X is the following:
```
$ ./imhex
[18:36:33] [INFO]  [main | Main]                Welcome to ImHex 1.38.0.WIP!
[18:36:33] [INFO]  [main | Main]                Compiled using commit master@59c6d30
[18:36:33] [INFO]  [main | Main]                Running on Linux 6.1.0-37-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.140-1 (2025-05-22) (x86_64)
[18:36:33] [INFO]  [main | Main]                Linux distribution: Debian GNU/Linux 12 (bookworm). Version: 12
X Error of failed request:  BadWindow (invalid Window parameter)
  Major opcode of failed request:  18 (X_ChangeProperty)
  Resource id in failed request:  0x5400009
  Serial number of failed request:  152
  Current serial number in output stream:  163
```

The culprit is in `hex::init::WindowSplash::initGLFW()`, specifically
the `glfwCreateWindow` call with a window size of 1 by 1, that's the
last call in the ImHex codebase, after that it's libglfw and libX11.

The issue can be worked around by inhibiting the splash screen using the
`IMHEX_SKIP_SPLASH_SCREEN=1` environment variable, setting the window to
be a size larger than 1 by 1 also seems to resolve the situation.

My hunch is that an underflow occurs somewhere with the smaller values,
but I did no further investigation into analysing the root cause.

----
Above the line is the commit message.

### Problem description
See https://github.com/WerWolv/ImHex/issues/2215, which I think is the
same problem, and commit description above. Edit; I did another search
in the issues, I wouldn't be surprised if #2233 is a duplicate of the
2215 issue.

### Implementation description
Please see the commit message.

Analysis was done by setting an X11 error handler, making that throw and
running it in a debugger. This is available in this dev commit;
4a24e16a2ef100a9417e572f6b16c4a95711e94e.

### Screenshots
No apparent glitches if I make the splash window stick around with
`return std::nullopt;` in the `loop()` function. I don't know if there's
an issue at the beginning, but given that the window is set to
transparent before it is created and resized I don't expect any.

Here's a compulsory screenshot of the splash screen over an editor;

<img width="1247" height="666" alt="image"
src="https://github.com/user-attachments/assets/8ce05565-f207-4134-892d-9c074c4c840c"
/>


### Additional things
> Anything else you would like to say

Yes! I don't use ImHex often, but it's really useful when I do, thank
you!
2025-08-09 14:12:22 +02:00
WerWolv
d683c04519 fix: ID and layout issues with static array members in the pattern data view
Fixes #2393
2025-08-09 14:09:32 +02:00
WerWolv
a403980976 feat: Added update to Nighly/Stable release option 2025-08-09 12:25:22 +02:00
WerWolv
5c3dfa08b2 impr: Open correct release page in browser if updater fails 2025-08-09 12:15:40 +02:00
WerWolv
fd2d50508b fix: Update nightly update detection logic to work with release changes 2025-08-09 12:10:25 +02:00
paxcut
14ee688629 fix: fixes for issues #2388 and #2389. (#2392)
Tab insertion was not being recorded for undoing and the shift-backspace
shortcut did not exist. This PR addresses both issues directly.
2025-08-09 03:03:08 -07:00
WerWolv
9e4557d90d git: Rename snap artifacts to match the naming of all other artifacts 2025-08-09 11:31:11 +02:00
WerWolv
d9810982ad git: Don't pull all submodules 2025-08-09 11:10:46 +02:00
WerWolv
282d950423 git: Move into correct folder to do git operations 2025-08-09 11:01:15 +02:00
WerWolv
cd5b16cce5 fix: Another missing include 2025-08-09 10:34:09 +02:00
WerWolv
cc1ac95af6 fix: Missing include 2025-08-09 10:23:35 +02:00
WerWolv
b14fa24836 git: Don't always create a new release for every nightly 2025-08-09 10:22:22 +02:00
WerWolv
59c6d3090b fix: Clang doesn't support std::chrono::parse() yet 2025-08-08 23:32:07 +02:00
WerWolv
1e809214b2 git: Updated readme 2025-08-08 23:07:10 +02:00
WerWolv
56ec07e316 build: Improve LTO and PCHs 2025-08-08 22:56:50 +02:00
WerWolv
ce66f3a98a build: Fix remaining missing includes 2025-08-08 22:56:21 +02:00
WerWolv
5d180bdbfb build: Fix multiple missing includes 2025-08-08 22:48:31 +02:00
WerWolv
d922dbe04c impr: Make Bold and Italic button icons configurable though localizations 2025-08-08 22:46:47 +02:00
WerWolv
1fc6ec28c2 impr: Added search icon to the search bar button 2025-08-08 22:37:51 +02:00
WerWolv
ec6ff1d7d5 impr: More consistent look for the bookmark view 2025-08-08 22:36:58 +02:00
WerWolv
ad87f005fe feat: Added command line palette option to open/focus views 2025-08-08 22:36:46 +02:00
paxcut
df1e97af0a improv: further reformatting of text editor in an effort to bring it into the ui plugin. (#2385)
Added the ui namespace and broke the main rendering function into a set
of smaller functions. Reorganized the header code separating functions
into rough groups that eventually will be in separate files.
2025-08-08 12:47:52 -07:00
WerWolv
82ceb2e11f impr: Better auto updater, added support for updating nightlies 2025-08-08 21:25:52 +02:00
WerWolv
9698232f69 git: Fix nightly release notes generation 2025-08-08 19:09:41 +02:00
WerWolv
b1867aac92 build: Fixed precompiled header build 2025-08-08 17:47:48 +02:00
WerWolv
09bc5b92f6 impr: Make font bold icon look more bold 2025-08-08 17:47:24 +02:00
WerWolv
725462b222 fix: Diffing task not being properly cancelable
Fixes #2383
2025-08-08 17:47:15 +02:00
WerWolv
a9faba5cec git: Properly set version variable in nightly release CI 2025-08-08 17:46:11 +02:00
WerWolv
5a318da8ca git: Fix nightly release action file paths 2025-08-07 23:53:12 +02:00
WerWolv
5bc8366749 git: Checkout repo properly in nightly release CI 2025-08-07 23:46:54 +02:00
WerWolv
6200036014 git: Don't fail if artifacts.tar doesn't exist 2025-08-07 23:43:28 +02:00
WerWolv
38b891bd62 git: Added nightly release CI 2025-08-07 23:40:15 +02:00
WerWolv
a22c606e42 impr: Swap byte distribution graph X and Y axis, remove mouse text 2025-08-07 21:48:37 +02:00
WerWolv
dc0473e48d impr: Replace mentions of "Providers" with "Data Sources" for clarity 2025-08-07 21:30:16 +02:00
WerWolv
71f5373ea8 impr: Added recent entry tooltips 2025-08-07 21:29:58 +02:00
WerWolv
bd4ce72800 impr: Replace store buttons with icon buttons 2025-08-07 17:09:29 +02:00
WerWolv
d39d33de32 fix: Inconsistent look of welcome screen hyperlinks 2025-08-07 17:09:07 +02:00
WerWolv
7c07f70afd fix: AlmaLinux doesn't seem to support fmt::println yet 2025-08-07 17:08:38 +02:00
WerWolv
de67d5942b fix: Broken formatting in unit tests 2025-08-07 08:26:35 +02:00
WerWolv
f358069cc1 feat: Allow plugins to add their own welcome screen quick settings, improve UI 2025-08-06 22:51:59 +02:00
aoqia194
cf87294a8c feat: Add EventViewClosed event (#2377)
Where one door opens, another one closes (said someone) and in this
situation i mean view, because there's no event for closing a view only
opening one, so please add this :c

### Problem description
Simply adds an **EventViewClosed** to match the pre-existing
**EventViewOpened**. Also fixes the issue where EventViewOpened wouldn't
trigger for windows that were popups (even if they are technically a
View.

### Implementation description
I mirrored the current functionality of EventViewOpened for closing.

---------

Co-authored-by: paxcut <53811119+paxcut@users.noreply.github.com>
2025-08-06 22:22:46 +02:00
WerWolv
40b48f6460 fix: Use proper format specifiers for SetItemTooltip 2025-08-06 22:21:02 +02:00
WerWolv
31322bcc76 fix: Unavailable menu items still being visible in the command palette 2025-08-06 22:20:31 +02:00
WerWolv
abe13d9ff9 impr: Make reset button of color settings widgets look nicer 2025-08-06 22:20:03 +02:00
WerWolv
064b21a264 impr: Added icons to providers, improved the quick settings 2025-08-06 21:37:57 +02:00