Commit Graph

239 Commits

Author SHA1 Message Date
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
906f2d324b Merge branch 'ul-dev' into xfw-dev 2023-03-24 18:56:42 +00:00
Willy-JL
31122e295c Hide statusbar in lock menu 2023-03-24 00:00:33 +00:00
MX
9165b819f4 fix merge issues 2023-03-22 22:04:04 +03:00
MX
795c8eeef7 Merge branch 'fz-dev' into dev 2023-03-22 21:13:39 +03:00
あく
7bf0a4786c [FL-3152] Screen streaming improvements (#2498)
* Rpc: reserve some bandwidth when screen streaming
* Move furi_hal_compress to toolbox/comporess
* Lib: heatshrink as external submodule, compile warnings fixes, better buffer management
* Lib: cleanup compressor definitions
* Rpc: add canvas orientation support
* Format Sources
2023-03-23 03:00:48 +10: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
Nikolay Minaylov
0444a80f19 [FL-3134] BadUSB: Script interpreter refactoring (#2485)
* Script command and character tables
* Non-blocking stringdelay, docs update
* altchar/altstring fix
* Layout select UI fix
* Remove debug print

Co-authored-by: あく <alleteam@gmail.com>
2023-03-21 02:22:03 +09:00
Willy-JL
51528ce700 Fix scrolling text lmao 2023-03-19 19:52:27 +00:00
Willy-JL
888c356c98 Make the lockscreen statusbar setting actually work 2023-03-19 18:45:23 +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
3b0daf2f21 Fix scrolling text left-align logic 2023-03-15 18:49:17 +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
Liam Hays
c27d4d78f9 Fix auto-capitalization in the keyboard when the text box is empty. (#2483)
Co-authored-by: hedger <hedger@users.noreply.github.com>
Co-authored-by: あく <alleteam@gmail.com>
2023-03-15 23:51:15 +09: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
39ddf75f91 Merge branch 'ul-dev' into xfw-dev 2023-03-14 01:07:01 +00:00
MX
68fed0e03d Merge branch 'fz-dev' into dev 2023-03-09 21:17:57 +03:00
Michal Suchánek
780da7d4d5 Upside down / left handed orientation support (#2462)
* Add backup files to .gitignore
* Added lefty support in Settings > System > hand Orient: Fixes: #1015
* Left handed mode
* Fix lefthanded mode on vertical interfaces
* Input: new composite sequence identifier
* Gui: move input mapping from Canvas to ViewPort, properly handle input mapping on View switch in ViewDispatcher
* Rpc: proper input sequencing and tagging in RpcGui
* Rpc: remove magic from RpcGui

Co-authored-by: MrDaGree <5050898+MrDaGree@users.noreply.github.com>
Co-authored-by: Willy-JL <willy.leslie@icloud.com>
Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
Co-authored-by: Sergey Gavrilov <who.just.the.doctor@gmail.com>
2023-03-10 02:13:18 +09:00
Willy-JL
07edb7eea8 Format 2023-03-07 19:15:54 +00:00
Willy-JL
89e5b479c8 Fix lefthanded mode on vertical interfaces 2023-03-05 23:07:52 +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
Willy-JL
77eb733a9a Format 2023-03-02 02:52:25 +00: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
3c9ccd2c50 Left handed mode 2023-03-01 00:46:40 +00:00
Willy-JL
fa8ed7f6e4 Merge branch 'dev' of https://github.com/DarkFlippers/unleashed-firmware 2023-02-28 20:34:44 +00:00
Willy-JL
007447cc61 Add experimental dark mode setting 2023-02-27 19:12:48 +00:00
Willy-JL
991d49733f Format 2023-02-26 01:44:32 +00:00