@@ -36,33 +36,40 @@ unsigned char G_io_seproxyhal_spi_buffer[IO_SEPROXYHAL_BUFFER_SIZE_B];
3636
3737unsigned char io_event (__Z_UNUSED unsigned char channel ) {
3838 switch (G_io_seproxyhal_spi_buffer [0 ]) {
39- case SEPROXYHAL_TAG_FINGER_EVENT : //
40- UX_FINGER_EVENT (G_io_seproxyhal_spi_buffer );
41- break ;
4239
43- case SEPROXYHAL_TAG_BUTTON_PUSH_EVENT : // for Nano
40+ case SEPROXYHAL_TAG_BUTTON_PUSH_EVENT : // for Nano
4441#ifdef HAVE_BAGL
4542 UX_BUTTON_PUSH_EVENT (G_io_seproxyhal_spi_buffer );
4643#endif
4744 break ;
4845
46+ case SEPROXYHAL_TAG_STATUS_EVENT :
47+ if (G_io_apdu_media == IO_APDU_MEDIA_USB_HID && //
48+ !(U4BE (G_io_seproxyhal_spi_buffer , 3 ) & //
49+ SEPROXYHAL_TAG_STATUS_EVENT_FLAG_USB_POWERED )) {
50+ THROW (EXCEPTION_IO_RESET );
51+ }
52+
53+ /* fallthrough */
4954 case SEPROXYHAL_TAG_DISPLAY_PROCESSED_EVENT :
5055#ifdef HAVE_BAGL
51- if (!UX_DISPLAYED ())
52- UX_DISPLAYED_EVENT ();
56+ UX_DISPLAYED_EVENT ({});
57+ #elif HAVE_NBGL
58+ UX_DEFAULT_EVENT ();
5359#endif
5460 break ;
5561
56- case SEPROXYHAL_TAG_TICKER_EVENT : { //
57- UX_TICKER_EVENT (G_io_seproxyhal_spi_buffer , {
58- if (UX_ALLOWED ) {
59- UX_REDISPLAY ();
60- }
61- });
62+ #ifdef HAVE_NBGL
63+ case SEPROXYHAL_TAG_FINGER_EVENT :
64+ UX_FINGER_EVENT (G_io_seproxyhal_spi_buffer );
65+ break ;
66+ #endif
67+
68+ case SEPROXYHAL_TAG_TICKER_EVENT :
69+ UX_TICKER_EVENT (G_io_seproxyhal_spi_buffer , {});
6270 break ;
63- }
6471
65- // unknown events are acknowledged
72+ // unknown events are acknowledged
6673 default :
6774 UX_DEFAULT_EVENT ();
6875 break ;
@@ -153,7 +160,7 @@ void app_init() {
153160 }
154161#endif // HAVE_SWAP
155162 BLE_power (0 , NULL );
156- BLE_power (1 , "Nano X" );
163+ BLE_power (1 , NULL );
157164#endif // HAVE_BLE
158165
159166}
0 commit comments