-
Notifications
You must be signed in to change notification settings - Fork 105
Export and import feature for WebApps #348
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
base: master
Are you sure you want to change the base?
Conversation
- import and export menu entry - new shortcuts for the import and the export tool - a new tool window (ei_tool.ui) - import and export handler in common.py
- remove unnecessary code and simplify it - remove the unstable profile directory export and import functionality - remove the abort function and button, as the process is so quick that they are completely unnecessary. - define gladefiles constants at the beginning of webapp-manager.py
- update text and function names - removed the ei_task class as it is no longer needed - created a get_codename() function as this is used twice in common.py - removed the tool window and the progress tracking because they are not needed - removed the browser profile export feature because it is unstable. It takes extremely long and does not work with different browser versions - implemented a function which checks during the import process whether the browser is installed on the device. If not, it searches an alternative browser on the device. - declared gladefiles paths as constants at the beginning of webapp-manager.py - removed all trailing spaces - applied the maximum line length
- bug fix: application crash It now uses GLib.idle_add() to prevent the "Segmentation fault (core dumped)" error in GTK3 - try catch in update_imported_desktop()
58fd0d9
to
8f38735
Compare
Very nice. I like it, though the first thing that comes to mind, is if we really want to support this additional set of features. Looking at the number of requests, we probably do, but I'd like it to be more minimalist.
|
Thanks for your feedback, Clefebvre. I will modify the code according your recommendations. |
- revert unnecessary changes - remove the keyboard shortcuts - hardcoded the export path - implemented better collision handling for re-export and re-import - improved the browser check functionality when importing - implemented draft for Suggestion: Store custom icons automatically in the /ice/icons/ directory
I tried to reduce the code: To improve the stability of function "imported_desktop_update", it now handles the case where the browser name is not found in the supported browsers list. Some thoughts about the custom icons. Problem 2: However, implementing these icon handling changes results in more code and might miss the goal of keeping it minimalistic but makes it more user-friendly. What do you think? |
This PR adds a graphical and user-friendly import and export feature. It exports the ".desktop" files and the custom icons to an archive, which can then be imported again. If the browser is missing, it takes the most similar alternative.
Issues related to the feature:
#292
#338
#347
#22
#232
Note: I tried to include the profiles directories, but it was unstable. For example, Firefox couldn't use a profile directory created with a newer version.
There are new menu buttons:

The new shortcuts are also documented in the shortcuts window:

After clicking the "Export" menu button, a file chooser dialog will appear:

Once the process has finished, a new dialog will appear. Users can open the containing directory directly from the dialog.


The archive contains two folders:

/applications/* with all the desktop files
/ice/icons/* with all the icons