-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Filesystem panel #7
Conversation
tobozo
commented
Mar 15, 2024
- Fixed Arduino IDE closing when closing the applet
- Restored FS/merge panel (work still in progress)
Let me know when you have working fs/merge working again. I would have to test both esptool and espota(wireless upload) before merge. If there is windows incompatibility will have to correct that. |
okay I have pushed what I've done so far, but more stuff will be added soon so please don't overwrite my fork yet :) The fs/merge tools are working but there are requirements:
Cosmetic changes
TODO
|
|
Looking good there! |
don't trust the failed video capture, it is completely fluid on my desktop 😉 esp32partitiontool.mp4 |
next task will be to add the missing "Save CSV" button, and I'll be finished with this iteration this button is necessary because the current workflow exclusively relies on the temporary build folder; so if any partition editing occured and the user hasn't used "Export CSV" to explicitely overwrite "partitions.csv" in the sketch folder, the partition changes will be ignored by SPIFFS and Merge tools this situation also applies when using the "Import CSV" button: the loaded custom partition scheme is only living in the GUI until it has been saved or exported in order to prevent that, the partitions.csv file in the sketch folder (not the build folder) should be overwritten without prompt whenever necessary (e.g. on SPIFFS/Merge button press) additionnally the "Save CSV" button can be grayed out when saving isn't necessary |
|
Could you explain how the buttons work at least the workflow how should the app be used now with these new changes. At the moment it seems like it compiles the sketch each time, merge seems not to work complains about |
great! let's call this bug a feature 🤣 ota is the only feature I haven't tested, otherwise uploading spiffs and merged bin both work fine on linux Arch, you can skip linux testing anyway I can take care of that I'was surprised you had to restart the Arduino IDE to see the board changes though, I'll push a fix.
the UI class can now access the frame object so in theory it could be resized, I just hope the stretched background image will not affect the window size
most bash commands should work on macos, but zsh is the default so you'll need to type "bash" before trying anything
the first message is a false positive, subsequent similar messages however are true positives
thanks for finding that bug, path is evaluated before the build occurs, I'll push a fix too
nope it doesn't look there, it relies only on the build folder, Arduino IDE does the compilation, upload spiffs uses that folder to figure out the partition offset, and mergebin just uses the existing binares
it's useless to do that manually now, it triggers a compilation every time just to be safe :D
unless you can't see the tooltip text when hovering the buttons, I don't see what more I can explain than "click on the button to trigger the action" |
Yeah I wasn't sure about how the buttons function now that you added auto compile before their respective actions.I do not see the toolt tips for those FSPanel buttons but they are self explanatory. Do we really need two merge buttons the old system ask user if they want to flash as well was nice but I don't mind this but feels redundant having two buttons separating build & upload. For SPIFFS button it does auto attempt to upload maybe users would like to build only so having an option to ask build and upload as options for both button cases would be better. Thanks I don't really have time to test on linux if you can do it on your end great! I'm not gonna explicitly say its supported on Mac just in case unless someone chimes in for Mac testing we will not talk about it |
oh crap, I'm not sure how to fix that, maybe they're disabled by some inherited os rules? [edit] actually I misunderstood, there are no tooltips for the fsPanel buttons Elements with tooltip text:
the Arduino IDE has a different button for compile and upload so it just made sense to inherit from that moreover, a serial connection isn't always available, and a merged bin isn't always for flashing: it can be created for redistribution (e.g. publish to M5Burner) adding back the bugfixes
|
column titles are centered vertically with the standard line height, the problem is elsewhere I suspect the Tahoma font used for the "Partition" title renders differently depending on the OS the applet is running on. let's see if the latest changes sorted out the stretching problem: Standalone:
|
I have implemented working UI, let me know if you have anything other to commit so I can add my changes and merge it(after test of all features). |
incoming font support to prevent discrepancies depending on the OS chosen font: DejaVu (lesser restrictive licence for redistribution, comes with monotype and sans) [edit]
|
It wasn't the font it was the box layout you used. I changed layout that doesn't cause such issues. I'm thinking going with flatlaf it works on standalone but I think when I started this project flatlaf wasn't working it made the app not visible under tools |
The fonts aren't responsible for the layout problem but they are creating discrepancies, just compare your screenshots with mine, the title doesn't have the same grease and my tahoma version is more condensed. Adding a specific font bundled with the applet will prevent that, just remember not to use local or default fonts if you add more components. |
btw there's a quick way to test the FSPanel in the standalone version, just add
never head of that but anything sounds better than GridBagLayout :-) once the interface will have matured, it will be ready to receive l10n support there won't be further commits for this iteration, I won't have time to code or test anything for a few weeks as I'll be busy with more urgent actitivies |
I added minor ui fix changed the layout, looked at espota tool docs seems like it only can upload spiffs with -s -f (-s indicates spiffs -f indicates file) if -s is not used it will upload firmware ie app image, merged image can't be uploaded via ota port since we can't overwrite bootloader or any other non app or spiffs partition, so a warning is included to use serial ports instead. |
Nicee! |