Comments (6)
Andy said:
Am I the only one who’s seeing a lot of the “preferences have been modified” msgbox ?
I started 4 RIDE4 clients on Windows, using Version: 4.0.2616
Platform: Win32
Date: 2017-01-17 15:18:09 +0000
Git commit: 6f93ef9In each I setup to connect to an interpreter to the same server, but with different port numbers. But didn’t connect to any of them.
When moving around these windows, without having connected to an APL in any of them, I keep seeing these msgboxes. Am I alone in this ?
The problem may be exacerbated by trying to connect ..
@JasonDyalog said:
What happens is RIDE reads the preferences file all the time.
IMHO, What should happen is:
Ride startup: Read preferences in to memory
Ride preferences change: Write preferences to memory AND to file.
Ride quit: Write preferences to file.
at no point when RIDE is running should it read from the preferences, Though there may be an argument to read the preferences when on the connect window to get an updated list of "saved connections".
@ngn said:
Then you risk overwriting without warning the prefs of the RIDE that was closed first.
@abrudz said:
Jason: Why write to file on quit? If we always write to file on change, there will be no change at quit time.
@ngn said:
I don't have ideas for solving this, but I can try to explain what's going on:
Connect configurations (a.k.a. "favs" - the list of items on the left-hand side of the Connect page) are part of RIDE's persistent state - they are written to prefs.json the moment you change them.
If you have two or more instances of RIDE and you change the prefs, RIDE is not smart enough to merge them, therefore it asks you, the user, if it should re-read or overwrite.
@mkromberg said:
That's OK.
The problem is the preferences which have to do with window configuration (special cased) but I think now also whether the ws explorer is visible (needs to be added to special cases). Anything that has to do with normal operation of the RIDE rather than actual configuration needs to be special-cased and only updated on exit or not warned about.
from ride.
@JasonRivers @mkromberg @ngn @abrudz : This "issue" came about when me and Nick tried to mimic the Notepad++ style of alerting change. Essentially these messages should only be shown when a RIDE window gains focus and the modified stamp on the preferences file has changed. We can split out some preferences to a seperate file but I feel like this would overcomplicate things. ANother solution is simply not to store some of the preferences such as whether the Workspace Explorer is opened or not. What are your thoughts on these suggestions?
from ride.
I think the number of "special" preferences (essentially only related to window layout, or to put it another way, options that are not changed by going to the preferences dialogs) is quite small. How hard is it to just special-case this and say that if the ONLY changes are to these preferences, then do not notify the user.
from ride.
@mkromberg It shouldn't be diffficult, we will just rename the "winstate" file to something like "init_config" and put settings only read at startup in there.
from ride.
For now I have matched the ODE behaviour in terms of not persisting the WSE state. I think the addition of a "special case" file to hold preference variables and not just the window position/size, only read in at config, is an enhancement not an issue, therefore we should seperate that into a seperate 'issue' on GitHub. I will be committing code to help with the multiple RIDE windows.
from ride.
I think the addition of a "special case" file to hold preference variables and not just the window position/size, only read in at config, is an enhancement not an issue, therefore we should seperate that into a seperate 'issue' on GitHub.
from ride.
Related Issues (20)
- White line at bottom of password box
- Re-ordering of configurations should be remembered even without [SAVE]
- Simplify connect screen HOT 1
- Autocomplete does not work in brackets
- Style issues of connect screen cogs and play button HOT 3
- Windows installer uses an old logo
- Update docs to describe multiline input
- Remember that an auto-generated config was deleted HOT 1
- Trace/Edit configuration should support "Skip [blank|comment|locals] lines when tracing" features that Windows IDE provides
- Toggling Full Screen off makes the menu bar disappear HOT 1
- Cloning a configuration creates an inconsistenly named config item
- Cloning a configuration puts the clone above the original in the "Available Configurations"
- Limiting session log size can break on 19.0
- WIBNI I could start a certain config by passing its name as a commandline argument
- Changes to the size of the Ride window are not passed on the the APL session (Mac only)
- System command output such as from )lib is too long in Dyalog 19.0 under RIDE 4.5 HOT 3
- Platform pre-requisites statements likely out of date HOT 1
- [DOCS] Provide clearer signposting to Zero Footprint HOT 1
- Get rid of config option "Show toolbar" HOT 1
- Unhelpful msgbox when attempting to connect to an interpreter via ssh, but no password added
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ride.