Skip to content

fix delayed modifier oled updates#838

Merged
HaoboGu merged 1 commit into
HaoboGu:mainfrom
scottlamb:fix-oled-modifiers
May 10, 2026
Merged

fix delayed modifier oled updates#838
HaoboGu merged 1 commit into
HaoboGu:mainfrom
scottlamb:fix-oled-modifiers

Conversation

@scottlamb
Copy link
Copy Markdown
Contributor

The symptom I would see is that when I hit shift, there was no change on press, but the icon was underlined on release. The next keypress would release the underline.

The symptom I would see is that when I hit shift, there was no change
on press, but the icon was underlined on release. The next keypress
would release the underline.
@github-actions
Copy link
Copy Markdown

Size Report

Example main PR Diff .text .data .bss
use_config/nrf52832_ble 356.2 KiB 356.2 KiB +0.00% ⬆️ +4 0 0
use_config/nrf52840_ble 406.3 KiB 406.3 KiB +0.00% ⬇️ -4 0 0
use_config/nrf52840_ble_split (central) 482.2 KiB 482.2 KiB +0.00% ⬆️ +4 0 0
use_config/nrf52840_ble_split (peripheral) 307.2 KiB 307.2 KiB +0.00% 0 0 0
use_config/pi_pico_w_ble 640.2 KiB 640.2 KiB +0.00% ⬆️ +32 0 0
use_config/rp2040 146.6 KiB 146.7 KiB +0.00% ⬆️ +4 0 0
use_config/rp2040_split (central) 158.4 KiB 158.4 KiB +0.00% ⬆️ +4 0 0
use_config/rp2040_split (peripheral) 25.9 KiB 25.9 KiB -0.01% ⬇️ -4 0 0
use_config/stm32f1 62.3 KiB 62.3 KiB +0.00% 0 0 0
use_config/stm32h7 99.7 KiB 99.7 KiB +0.00% 0 0 0
use_rust/nrf52832_ble 345.3 KiB 345.3 KiB +0.00% 0 0 0
use_rust/nrf52840_ble 401.6 KiB 401.5 KiB +0.00% ⬇️ -12 0 0
use_rust/nrf52840_ble_split (central) 490.5 KiB 490.5 KiB +0.00% ⬆️ +8 0 0
use_rust/nrf52840_ble_split (peripheral) 304.5 KiB 304.5 KiB +0.00% ⬇️ -4 0 0
use_rust/pi_pico_w_ble 640.8 KiB 640.8 KiB +0.00% ⬆️ +8 0 0
use_rust/rp2040 146.4 KiB 146.4 KiB +0.00% ⬇️ -4 0 0
use_rust/rp2040_split (central) 157.7 KiB 157.7 KiB +0.00% 0 0 0
use_rust/rp2040_split (peripheral) 26.4 KiB 26.4 KiB -0.01% ⬇️ -4 0 0
use_rust/stm32f1 61.8 KiB 61.8 KiB +0.00% ⬇️ -4 0 0
use_rust/stm32h7 120.9 KiB 120.8 KiB +0.00% ⬇️ -4 0 0
use_config/nrf52832_ble — 356.2 KiB → 356.2 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 326056	   5192	  33464	 364712	  590a8	rmk-nrf52832

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 326052	   5192	  33464	 364708	  590a4	rmk-nrf52832

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +158  [ = ]       0    .debug_info
   +83%     +30  [ = ]       0    [Unmapped]
  +0.0%     +27  [ = ]       0    .debug_line
  +0.0%     +10  [ = ]       0    .debug_loc
  +0.0%      +4  +0.0%      +4    .text
  -0.1% -1.44Ki  [ = ]       0    .debug_str
  -0.0% -1.21Ki  +0.0%      +4    TOTAL
use_config/nrf52840_ble — 406.3 KiB → 406.3 KiB (+0.00% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 360616	   5200	  50248	 416064	  65940	rmk-nrf52840

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 360620	   5200	  50248	 416068	  65944	rmk-nrf52840

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.1% +2.37Ki  [ = ]       0    .debug_info
  +0.2% +1.02Ki  [ = ]       0    .debug_loc
  +0.0%    +519  [ = ]       0    .debug_str
  +0.1%    +222  [ = ]       0    .debug_line
  +9.6%      +5  [ = ]       0    [Unmapped]
  -0.0%      -4  -0.0%      -4    .text
  -0.0%      -8  [ = ]       0    .debug_aranges
  -0.0%     -20  [ = ]       0    .debug_frame
  -0.0%     -25  [ = ]       0    .strtab
  -0.0%     -32  [ = ]       0    .debug_ranges
  -0.0%     -32  [ = ]       0    .symtab
  +0.1% +4.00Ki  -0.0%      -4    TOTAL
use_config/nrf52840_ble_split (central) — 482.2 KiB → 482.2 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 441164	   6524	  46056	 493744	  788b0	central

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 441160	   6524	  46056	 493740	  788ac	central

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +567  [ = ]       0    .debug_str
   +57%     +26  [ = ]       0    [Unmapped]
  +0.0%      +4  +0.0%      +4    .text
  +0.0%      +1  [ = ]       0    .debug_loc
  -0.0%    -154  [ = ]       0    .debug_line
  -0.0%    -188  [ = ]       0    .debug_info
  +0.0%    +256  +0.0%      +4    TOTAL
use_config/nrf52840_ble_split (peripheral) — 307.2 KiB → 307.2 KiB (+0.00%)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 282128	   5888	  26520	 314536	  4cca8	peripheral

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 282128	   5888	  26520	 314536	  4cca8	peripheral

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  -0.0%      -1  [ = ]       0    .debug_info
  -0.0%      -1  [ = ]       0    .debug_loc
  -3.1%      -2  [ = ]       0    [Unmapped]
  -0.0%    -896  [ = ]       0    .debug_str
  -0.0%    -900  [ = ]       0    TOTAL
use_config/pi_pico_w_ble — 640.2 KiB → 640.2 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 600944	      0	  54632	 655576	  a00d8	rmk-pi-pico-w

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 600912	      0	  54632	 655544	  a00b8	rmk-pi-pico-w

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0% +1.57Ki  [ = ]       0    .debug_str
  +0.0%    +169  [ = ]       0    .debug_loc
  +0.1%    +150  [ = ]       0    .strtab
  +0.0%    +140  [ = ]       0    .debug_line
  +0.0%     +32  [ = ]       0    .symtab
  +0.0%     +32  +0.0%     +32    .text
  +0.1%     +28  [ = ]       0    .debug_frame
  +0.0%      +8  [ = ]       0    .debug_aranges
  +0.0%      +8  [ = ]       0    .debug_ranges
  +6.6%      +4  [ = ]       0    [Unmapped]
  -0.0%    -623  [ = ]       0    .debug_info
  +0.0% +1.52Ki  +0.0%     +32    TOTAL
use_config/rp2040 — 146.6 KiB → 146.7 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 134928	      0	  15244	 150172	  24a9c	rmk-rp2040

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 134924	      0	  15244	 150168	  24a98	rmk-rp2040

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +183  [ = ]       0    .debug_info
  +0.0%     +37  [ = ]       0    .debug_line
   +74%     +28  [ = ]       0    [Unmapped]
  +0.0%      +4  +0.0%      +4    .text
  -0.0%    -204  [ = ]       0    .debug_str
  +0.0%     +48  +0.0%      +4    TOTAL
use_config/rp2040_split (central) — 158.4 KiB → 158.4 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 146156	      0	  16008	 162164	  27974	central

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 146152	      0	  16008	 162160	  27970	central

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +693  [ = ]       0    .debug_str
  +0.0%      +4  +0.0%      +4    .text
  +0.0%      +1  [ = ]       0    .strtab
 -13.6%      -6  [ = ]       0    [Unmapped]
  -0.0%     -10  [ = ]       0    .debug_loc
  -0.0%     -55  [ = ]       0    .debug_line
  -0.0%    -187  [ = ]       0    .debug_info
  +0.0%    +440  +0.0%      +4    TOTAL
use_config/rp2040_split (peripheral) — 25.9 KiB → 25.9 KiB (-0.01% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
  24016	     56	   2412	  26484	   6774	peripheral

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
  24020	     56	   2412	  26488	   6778	peripheral

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
   +11%      +4  [ = ]       0    [Unmapped]
  -0.1%      -4  -0.1%      -4    .rodata
  [ = ]       0  -0.0%      -4    TOTAL
use_config/stm32f1 — 62.3 KiB → 62.3 KiB (+0.00%)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
  56312	     28	   7432	  63772	   f91c	rmk-stm32f1

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
  56312	     28	   7432	  63772	   f91c	rmk-stm32f1

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  -1.6%      -1  [ = ]       0    [Unmapped]
  -0.0%      -6  [ = ]       0    .debug_line
  -0.0%    -121  [ = ]       0    .debug_info
  -0.1%    -432  [ = ]       0    .debug_str
  -0.0%    -560  [ = ]       0    TOTAL
use_config/stm32h7 — 99.7 KiB → 99.7 KiB (+0.00%)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
  92116	    268	   9664	 102048	  18ea0	rmk-stm32h7

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
  92116	    268	   9664	 102048	  18ea0	rmk-stm32h7

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +460  [ = ]       0    .debug_info
  +0.0%     +85  [ = ]       0    .debug_str
  +0.0%     +23  [ = ]       0    .debug_line
  +0.0%    +568  [ = ]       0    TOTAL
use_rust/nrf52832_ble — 345.3 KiB → 345.3 KiB (+0.00%)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 315944	   5200	  32456	 353600	  56540	rmk-nrf52832

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 315944	   5200	  32456	 353600	  56540	rmk-nrf52832

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +388  [ = ]       0    .debug_info
  +1.4%    +110  [ = ]       0    .debug_abbrev
  +0.0%     +16  [ = ]       0    .debug_line
  -0.0% -1.20Ki  [ = ]       0    .debug_str
  -0.0%    -712  [ = ]       0    TOTAL
use_rust/nrf52840_ble — 401.6 KiB → 401.5 KiB (+0.00% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 360256	   5200	  45728	 411184	  64630	rmk-nrf52840

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 360268	   5200	  45728	 411196	  6463c	rmk-nrf52840

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +741  [ = ]       0    .debug_str
   +24%     +13  [ = ]       0    [Unmapped]
  -0.0%     -12  -0.0%     -12    .text
  -0.0%     -19  [ = ]       0    .debug_line
  -0.0%     -59  [ = ]       0    .debug_info
  +0.0%    +664  -0.0%     -12    TOTAL
use_rust/nrf52840_ble_split (central) — 490.5 KiB → 490.5 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 443984	   6524	  51792	 502300	  7aa1c	central

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 443976	   6524	  51792	 502292	  7aa14	central

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.1% +2.74Ki  [ = ]       0    .debug_info
  +0.1% +2.13Ki  [ = ]       0    .debug_str
  +0.5% +1.67Ki  [ = ]       0    .debug_line
  +0.1% +1.02Ki  [ = ]       0    .debug_loc
   +60%     +26  [ = ]       0    [Unmapped]
  +0.0%      +8  +0.0%      +8    .text
  -0.0%      -8  [ = ]       0    .debug_aranges
  -0.0%     -20  [ = ]       0    .debug_frame
  -0.0%     -25  [ = ]       0    .strtab
  -0.0%     -32  [ = ]       0    .debug_ranges
  -0.0%     -32  [ = ]       0    .symtab
  +0.1% +7.48Ki  +0.0%      +8    TOTAL
use_rust/nrf52840_ble_split (peripheral) — 304.5 KiB → 304.5 KiB (+0.00% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 281148	   5328	  25288	 311764	  4c1d4	peripheral

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 281152	   5328	  25288	 311768	  4c1d8	peripheral

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +122  [ = ]       0    .debug_info
  +3.2%      +2  [ = ]       0    [Unmapped]
  -0.0%      -4  -0.0%      -4    .text
  -0.0%     -10  [ = ]       0    .debug_loc
  -0.0%     -94  [ = ]       0    .debug_str
  +0.0%     +16  -0.0%      -4    TOTAL
use_rust/pi_pico_w_ble — 640.8 KiB → 640.8 KiB (+0.00% ⬆️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 601380	      0	  54776	 656156	  a031c	rmk-pi-pico-w

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 601372	      0	  54776	 656148	  a0314	rmk-pi-pico-w

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.1% +1.82Ki  [ = ]       0    .debug_str
  +0.0%      +8  +0.0%      +8    .text
 -11.1%      -6  [ = ]       0    [Unmapped]
  -0.0%     -32  [ = ]       0    .debug_loc
  -0.0%    -176  [ = ]       0    .debug_line
  -0.0%    -336  [ = ]       0    .debug_info
  +0.0% +1.29Ki  +0.0%      +8    TOTAL
use_rust/rp2040 — 146.4 KiB → 146.4 KiB (+0.00% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 134800	      0	  15124	 149924	  249a4	rmk-rp2040

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 134804	      0	  15124	 149928	  249a8	rmk-rp2040

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%     +63  [ = ]       0    .debug_info
  +0.0%     +24  [ = ]       0    .debug_line
  +0.0%     +10  [ = ]       0    .debug_loc
  +5.0%      +3  [ = ]       0    [Unmapped]
  -0.0%      -4  -0.0%      -4    .text
  -0.0%    -252  [ = ]       0    .debug_str
  -0.0%    -156  -0.0%      -4    TOTAL
use_rust/rp2040_split (central) — 157.7 KiB → 157.7 KiB (+0.00%)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 145656	      0	  15788	 161444	  276a4	central

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 145656	      0	  15788	 161444	  276a4	central

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%    +340  [ = ]       0    .debug_str
  +0.0%     +87  [ = ]       0    .debug_line
  +0.0%     +34  [ = ]       0    .debug_loc
  +7.3%      +4  [ = ]       0    [Unmapped]
  -0.0%    -205  [ = ]       0    .debug_info
  +0.0%    +260  [ = ]       0    TOTAL
use_rust/rp2040_split (peripheral) — 26.4 KiB → 26.4 KiB (-0.01% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
  24316	     56	   2676	  27048	   69a8	peripheral

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
  24320	     56	   2676	  27052	   69ac	peripheral

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +7.4%      +4  [ = ]       0    [Unmapped]
  -0.1%      -4  -0.1%      -4    .rodata
  [ = ]       0  -0.0%      -4    TOTAL
use_rust/stm32f1 — 61.8 KiB → 61.8 KiB (+0.00% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
  55848	     28	   7408	  63284	   f734	rmk-stm32f1

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
  55852	     28	   7408	  63288	   f738	rmk-stm32f1

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  -0.0%      -2  [ = ]       0    .debug_line
  -0.0%      -4  -0.0%      -4    .text
  -0.0%    -326  [ = ]       0    .debug_str
  -0.0%    -332  -0.0%      -4    TOTAL
use_rust/stm32h7 — 120.9 KiB → 120.8 KiB (+0.00% ⬇️)

cargo size (PR):

   text	   data	    bss	    dec	    hex	filename
 107972	    324	  15452	 123748	  1e364	rmk-stm32h7

cargo size (main):

   text	   data	    bss	    dec	    hex	filename
 107976	    324	  15452	 123752	  1e368	rmk-stm32h7

Bloaty diff (PR vs main):

    FILE SIZE        VM SIZE    
 --------------  -------------- 
  +0.0%     +12  [ = ]       0    .debug_line
  -0.0%      -4  -0.0%      -4    .text
 -44.8%     -30  [ = ]       0    [Unmapped]
  -0.0%    -117  [ = ]       0    .debug_info
  -0.0%    -329  [ = ]       0    .debug_str
  -0.0%    -468  -0.0%      -4    TOTAL

@HaoboGu
Copy link
Copy Markdown
Owner

HaoboGu commented May 10, 2026

oh good catch, thanks!

@HaoboGu HaoboGu merged commit c7e8144 into HaoboGu:main May 10, 2026
45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants