Comments (9)
Was thinking about this, and I'm not sure if this is what you were thinking:
http://jsfiddle.net/8SkE6/1/ (chrome only)
If so, I think it could work. Just need a way to send the values through the hub, which should be fairly easy I think.
from collidr.
I'm having some trouble figuring out which way to go here. I like this, but it may not work if someone has a specific layout or other design constraint.
I was thinking about just replacing the values, but then what do you do when the other user is typing in the same field as you? I'm wondering if we should just lock the field (or the whole form?) when someone else starts editing? Prompt the viewing users and lock the form?
from collidr.
Whatever route we go here, we'll need to push the values out to the other clients, so I'll start there with #40.
from collidr.
Okay, #41 includes the change to the modify event that includes the new field value.
If you wanted implement this per your fiddle I think that should be fine - even if down the road we come up with multiple formatter options (passed into the initialization of the CollidR).
from collidr.
I created the shadow-user branch for this feature. I'm not doing anything in there, but we can collaborate on that branch to work this stuff out.
from collidr.
Okay, I will try to get that part done this weekend.
from collidr.
Preliminary results are promising:
Although this opens up a big can of worms. For example, if I start shadowing someone after they already made a few changes, I will only see changes that happen after I start shadowing them. This means I get an incorrect picture of the other user's form.
from collidr.
Changed the wording on the warning and added option to remove the shadow:
I also changed the behavior of the reload warning behavior as I thought it was a misleading:
- User A joins
- User B joins
- User B edits a field
- User A was presented the reload warning. This was misleading because User B had not saved the changes yet. User A had no way of reloading to see User B's changes. I changed the behavior so this warning is only displayed when User B saves their changes.
What we could do is show the "Shadow" option for User B as soon as User B makes a change to a field (by default, the icon could be hidden).
from collidr.
Some things to consider:
- If User A is shadowing User B, we could highlight the field that User B is currently editing (instead of showing the tooltip). I think this would be a little less 'invasive' than the tooltip.
- We may want to create a CollidR.Boostrapper.css file to encapsulate some of the styling.
- We could highlight fields that have differences
- We will need to solve #38 or else this approach will be very confusing for the end user.
- On client side, how do we get the current user name? It seems silly that there is an option to shadow yourself, but I don't see how to tell who the current user is
from collidr.
Related Issues (20)
- If I login on two page in same brower, not detected by the program HOT 4
- Cascaded click? HOT 6
- Sample Should Include Start Method with WebActivator
- Break Out JS Sources to Separate Files in Core Project
- More than one editor always reports 2 editors
- Create sample Formatter for Something Other than Bootstrap
- Add support for Edit and Save Events HOT 2
- Expose Edit Events in Bootstrap Formatter
- Add HTML Helpers to Create Data API Element Structures HOT 1
- Create HTML Helper to Add Script to Page HOT 12
- Improve NuGet Package HOT 1
- Add support for String, Guid, and Int64 keys HOT 2
- Clarify Experience for Out-Of-Sequence Logins/Edits HOT 1
- Allow Hub to Accept and Send New Values for Form Fields
- Create MVC Scaffolder that includes the RegisterCollidR bits
- Update Project Sample to VS2013
- Make notification pane unobtrusive
- Add build scripts to bundle javascript files
- Updates & nest models/collections
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 collidr.