mariuz / flamerobin

FlameRobin is a database administration tool for Firebird RDBMS. Our goal is to build a tool that is: lightweight (small footprint, fast execution) cross-platform (Linux, Windows, Mac OS X, FreeBSD) dependent only on other Open Source software
http://flamerobin.org
MIT License
211 stars 64 forks source link

Can't save modified style #327

Closed kalwados closed 8 months ago

kalwados commented 9 months ago

V0.9.8, 64 Bit, Windows

Error: can't open file 'C:\Program Files\Firebird\FlameRobin (x64)\xml-styles\stylers.xml' (error 5: access denied)

This is "normal" for Windows, because the application's folder is read-only for non-admin users.

Styles should be stored in the user's profile folder, i.e. C:\Users(user name)\AppData\Local\flamerobin At this place, the user can store modified style files.

On program startup, the folder C:\Users(user name)\AppData\Local\flamerobin should be checked; if no style xml files are found, copy the default style files from the application' folder.

arvanus commented 9 months ago

Hi @kalwados maybe change the installer to move styles to C:\Users\(user name)\AppData\Local\flamerobin, and let Flamerobin decide if there is a local folder, use it, if not use from user folder (because you can use Flamerobin portable) I image thar the same behavior occurs at Linux (if someone could try) @Jdochoa can you take a look?

The setup need to save to %user%\AppData\Local\flamerobin\xml-styles The app need to look for first at %user%\AppData\Local\flamerobin\xml-styles then secondly if not found at .\xml-styles (current)

kalwados commented 9 months ago

The setup need to save to %user%\AppData\Local\flamerobin\xml-styles The app need to look for first at %user%\AppData\Local\flamerobin\xml-styles then secondly if not found at .\xml-styles (current)

No. The setup runs with administrator rights, which can be a complete different user than the user which will run the application (or several users on same machine; think of terminal server) . The only reliable way is to let Flamerobin itself copy the xml files into the current user folder. Or at least use the user's folder when saving a style modified from the default.

arvanus commented 9 months ago

hum, let me try something

arvanus commented 9 months ago

Please try this version flamerobin-0.9.8-styles-setup-x64.zip flamerobin-0.9.8-styles-setup.zip

Commit https://github.com/arvanus/flamerobin/commit/4c2addf9c89bc20ff717882efce0cc54104b86f8 If it work I'll merge later into main repo

kalwados commented 9 months ago

OK, no error messages while saving modified styles. Thank you. But the whole style-edit-dialog does not work as I expect. I would like to use the "DarkModeDefault"; with Font "Consolas" and 12 pt. font size. Since the "set editor font" option does nothing since the past released, I used the "Global override" entry to set my font configuration, but at least the font size is not persistent als falls back to 10 pt. Also the selected font name "Consolas" is not copy into the other style items.

Jdochoa commented 8 months ago

IMHO the initial .xml files should be stored in the installation folder and the modifications in the user folder.

./jo

arvanus commented 8 months ago

Hello, @Jdochoa I simply copied everything to user folder in the first time the user saves the preferences. From this point Fr will use the user folder to look for styles I did this for simplicity reasons and to not change too much code