Commit Graph

165 Commits

Author SHA1 Message Date
Willy-JL
78c19f7d43 Fix busfault on text input buffer manual change 2023-03-30 02:31:53 +01:00
Willy-JL
5349c1bbca Fix crash on backspace clear all text 2023-03-29 01:24:43 +01:00
Willy-JL
aa8d9b7bac Format 2023-03-28 04:48:41 +01:00
Willy-JL
d886e16680 Fix text input crash on redraw after reset 2023-03-28 03:10:36 +01:00
Willy-JL
8d174634f6 Move cursor position in text input widget 2023-03-25 03:25:31 +00:00
Willy-JL
006a05973f Simplify text input keyboard drawing logic 2023-03-25 02:32:55 +00:00
Willy-JL
89e98dea4e Format 2023-03-20 21:26:20 +00:00
Willy-JL
7231ddf857 Change locked submenu popup timeout 2023-03-20 21:16:40 +00:00
Willy-JL
19625a5016 Locked menu item fixes 2023-03-20 21:09:51 +00:00
Giacomo Ferretti
f68cffef8d Add function to add a lockable submenu item
This will prevent to break existing apps
2023-03-20 20:58:05 +00:00
Willy-JL
c02caa6a40 Add lockable capability to Submenu module 2023-03-20 20:57:09 +00:00
Willy-JL
cfecf5d5d6 Support locked items in varitemlist 2023-03-20 20:12:20 +00:00
Willy-JL
09bc580497 Merge branch 'ul-dev' into xfw-dev 2023-03-17 23:52:05 +00:00
Willy-JL
eb05478531 Scroll text in variable item list option names 2023-03-16 18:50:37 +00:00
MX
559b0e9b40 Small UI fixes 2023-03-16 21:24:09 +03:00
Willy-JL
679352dbbf Hide GPIO tags from wii menu names 2023-03-16 18:22:00 +00:00
Willy-JL
faafee5fb5 Wii menu toggle, old menu ext apps and scroll text 2023-03-15 18:48:54 +00:00
Willy-JL
f93dd51f80 Remove empty box from wii menu 2023-03-15 18:46:39 +00:00
Willy-JL
e9de964690 Scroll app names in wii ui 2023-03-15 17:51:41 +00:00
Willy-JL
9c9f5d784f Properly center custom app icons 2023-03-15 16:47:16 +00:00
Willy-JL
9e08427c01 Expose CUSTOM_ICON_MAX_SIZE 2023-03-15 16:19:56 +00:00
Willy-JL
f61ea738ba Fix wii ui left input 2023-03-15 05:14:33 +00:00
Willy-JL
8e7ca0fca2 Shift wii ui icon position 2023-03-14 23:05:43 +00:00
Willy-JL
1926753794 Improve wii ui style 2023-03-14 22:47:06 +00:00
Willy-JL
f1ec78deb3 Initial wii ui style main menu 2023-03-14 22:11:30 +00:00
Willy-JL
9bfcf08b22 Scrollable text support center alignment 2023-03-14 22:10:04 +00:00
Willy-JL
2a51958d77 Sort apps and files by display name 2023-03-14 02:56:26 +00:00
Willy-JL
f14272d9e3 Format 2023-03-14 02:56:13 +00:00
Willy-JL
2b68bf7542 Update keyboard offset logic (fix #168) 2023-03-14 01:35:58 +00:00
Willy-JL
876229db51 Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware into xfw-dev 2023-03-04 02:55:19 +00:00
MX
6ff0a5f318 Update calls to new filesystem api 2023-03-02 21:36:33 +03:00
MX
f3ab4bc292 Merge branch 'fz-dev' into dev 2023-03-02 21:18:35 +03:00
Georgii Surkov
806428efeb [FL-3070] iButton system and app refactoring (#2388)
* Add 1-wire thermometer example app stub
* Working 1-wire thermometer app
* Refactor app to use threads
* Clean up code, add comments
* Add CRC checking
* Increase update period
* Fix error in fbt
* Revert the old update period
* Use settable pin in onewire_host
* Use settable pin for onewire_slave
* Clear EXTI flag after callback, make private methods static in onewire_slave
* Do not hardcode GPIO pin number
* Remove iButton hal from furi_hal_rfid
* Remove most of furi_hal_ibutton
* Add some of furi_hal_ibutton back
* Slightly neater code
* Update CODEOWNERS
* Add furi_hal_gpio_get_ext_pin_number
* Create README.md
* Temporary get Metakom and Cyfral keys out of the way
* Better enum name
* Syncing work, does not compile
* Syncing work, now compiles
* Working read impl for DS1990 and DS1992
* Add the ability to display extended key data
* Get rid of DialogEx
* Add save and load API
* Better iButtonKey encapsulation
* Fix crash
* Load key code boilerplate
* More load key code boilerplate
* Minor code cleanup
* Implement loading and saving DS1990 keys
* Implement the Info scene
* Implement loading & saving for DS1992
* Implement read error scene stub
* Implement delete confirmation screen
* Better error messages (protocol-dependent)
* Minor old code cleanup
* Remove iButtonDevice, add command callback to iButtonSlave
* Implement draft emulation for DS1990
* Better emulation for DS1990
* Initial emulation implementation for DS1992
* Better common command definitions
* Use common submenu callback, add protocol list
* Improve ViewData screen
* Improve scene_add_type
* Add stubs for write functionality
* Improve naming consistency
* Implement writing a DS1992 onto another one
* Improve DS1992 write code
* Improve DS1992 write code once more
* Prepare write_blank for DS1990, delete ibutton_writer
* Implement writing DS1990 onto blanks
* Fix reading DS1990
* Partially implement writing DS1992 onto blanks
* Implement GUI for writing keys
* Implement GUI for emulating keys
* Reduce memory usage for pretty_format
* Automatically truncate data more than 256 bytes
* Initial implementation of DS1996 (not tested)
* Fix crash due to missing virtual function
* Improve emulation code
* Improve DS1992 emulation code
* Correct return value for onewire_slave_send
* Correct return value for onewire_slave_receive
* Implement emulation for DS1992 & DS1996
* Better constant names
* Simplify & optimise the emulation code
* Remove duplicate code
* Add skip rom command emulation
* Show loading animation for large keys
* Implement manual adding & editing of keys
* Use buffered file streams to speed up saving & loading
* Reset key name before adding a new one
* Sync a buffered file stream before saving
* Use the DSGeneric protocol as a fallback option
* Implement emulation via RPC
* Refactor iButton code in preparation for comparator keys
* Refactor iButton code in preparation for comparator keys once more
* Make some functions static
* Make protocols not rely on one_wire classes
* Improve ProtocolDict usage
* Improve ProtocolDict usage more
* Implement reading Metakom & Cyfral keys
* Rename some files
* Better file structure
* Implement a unified interface for misc protocols
* Implement a unified interface for dallas protocols
* Concrete types for Dallas protocols
* Implement a unified interface for all key types
* Improved type naming
* Improved private types
* Proper types in protocol definitions
* Implement emulation for Cyfral & Metakom keys
* Implement save&load for Metakom & Cyfral keys
* Better type names
* Rename files, better names
* Allocate iButtonProtocols like a normal class
* Reset the key each time the start scene is selected
* Improve comments and constants
* Add ibutton_protocols to SDK headers
* Add ibutton_key to SDK headers
* Add ibutton_key to SDK headers
* Implement reading via cli
* Implement emulation via cli
* Implement writing Dallas blanks via cli
* Correctly revert the editing if cancelled by the user
* Correct committing mishap
* Elide the long text on the info screen
* Change key name for data in Misc keys
* Update iButtonFileFormat.md
* Remember the key's folder
* Save menu position in ReadKeyMenu and SavedKeyMenu
* Correct use of preselected path in file browser

Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-03-02 22:23:33 +09:00
Sergey Gavrilov
777a4d109d [FL-3055] Getter for application data path (#2181)
* Threads: application id
* Unit tests: appsdata getter test
* Unit tests: moar test cases for appsdata getter
* Unit tests: remove folders after test
* Storage: dir_is_exist, migrate, + unit_tests
* Plugins: migration
* Storage: common_exists, moar unit_tests 4 "common_migrate", "common_migrate" and "common_merge" bugfixes
* Storage: use FuriString for path handling
* Storage API: send caller thread id with path
* Storage: remove StorageType field in storage file list
* Storage: simplify processing
* Storage API: send caller thread id with path everywhere
* Storage: /app alias, unit tests and path creation
* Storage, path helper: remove unused
* Examples: app data example
* App plugins: use new VFS path
* Storage: file_info_is_dir
* Services: handle alias if the service accepts a path.
* App plugins: fixes
* Make PVS happy
* Storage: fix storage_merge_recursive
* Storage: rename process_aliases to resolve_path. Rename APPS_DATA to APP_DATA.
* Apps: use predefined macro instead of raw paths. Example Apps Data: README fixes.
* Storage: rename storage_common_resolve_path to storage_common_resolve_path_and_ensure_app_directory
* Api: fix version
* Storage: rename alias message
* Storage: do not create app folders in path resolving process in certain cases.

---------

Co-authored-by: Astra <93453568+Astrrra@users.noreply.github.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
2023-03-02 03:57:27 +10:00
Willy-JL
fa8ed7f6e4 Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware 2023-02-28 20:34:44 +00:00
Willy-JL
991d49733f Format 2023-02-26 01:44:32 +00:00
Willy-JL
3296cf3b79 Keyboard hold backspace to keep deleting 2023-02-24 04:46:14 +00:00
Willy-JL
c8e9e9bc9e Secondary symbol keyboard pane + switch key
Original idea & code by @edrethardo, update and fix by @Willy-JL
2023-02-24 04:02:09 +00:00
Willy-JL
d3f3bf1e11 Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware into xfw-dev 2023-02-24 01:05:31 +00:00
Willy-JL
f8eda660d2 Keyboard long press first char for lowercase 2023-02-24 00:50:00 +00:00
Willy-JL
fd7620202a Keyboard long press first char for lowercase 2023-02-24 00:49:41 +00:00
Willy-JL
d23f396c44 Keyboard lowercase check fix 2023-02-24 00:23:33 +00:00
Willy-JL
f3e3e828aa Fix keyboard capitalization bug 2023-02-24 00:22:43 +00:00
Willy-JL
02591c12b7 Fix keyboard capitalization bug (_ and space) 2023-02-24 00:10:04 +00:00
Round-Pi
b89902942b typo combing 2023-02-20 10:55:53 -05:00
Willy-JL
462a0c8efc Cleaner settings implementation (proper defaults) 2023-02-17 23:30:28 +00:00
Willy-JL
cb89bb9628 Fix archive sorting (skip on big folders) 2023-02-13 14:54:23 +00:00
Willy-JL
fbf99d6cb3 Skip browser inputs while loading / sorting 2023-02-13 14:54:15 +00:00
Willy-JL
abeb34b983 Fix archive sorting (skip on big folders) 2023-02-13 05:01:31 +00:00
Willy-JL
9fe3136993 Skip browser inputs while loading / sorting 2023-02-13 04:57:44 +00:00