Comments (10)
Why?
You should be able to support both with one build.
If you have any trouble with that, ask me; I have a lot of experience with this.
On a related note, can you please declare support for Dev14?
from gitdiffmargin.
Because I would like to support VS2013 and VS2012. For that I plan to have two VS projects sharing the code, because GitDiffMargin uses an API of VS2013 which is not available in 2012. Do you see a better way?
It would be great to get your help, thanks.
I could but I don't like the idea of doing that without having tested it and currently I don't have the infrastructure to test it.
from gitdiffmargin.
Which APIs?
from gitdiffmargin.
The one to be able to display the diffs in the Scroll Bars in map and bar mode
from gitdiffmargin.
You mean scroll bar map mode?
Which specific classes / methods are those? (where in your code?)
Depending on how your code works, you should be able to simply wrap that code in a version check.
However, you would probably need to move it into a separate project that references v12 of the relevant DLLs so that your main project can reference v10 & work on VS2010+.
See also http://blog.slaks.net/2014-02-25/extending-visual-studio-part-4-writing-cross-version-extensions/
from gitdiffmargin.
I mean the scroll bar on the right of the window
Here are some specific code for VS13
Sure I could use C# Preprocessor Directives for the different versions but this solve only the problem of the source code. Then I thought I could solve the problem of references with the following way but it doesn't work for references. So this is why I thought to go to two projects as my code let you do that with the two Factories: EditorDiffMarginFactory & ScrollDiffMarginFactory.
So the idea would be to remove in the VS12 versions the source code for ScrollDiffMarginFactory and all it's related classes/views...
from gitdiffmargin.
In fact I changed the references to use SDK of VS12 and the only specific thing are the 4 Order lines
from gitdiffmargin.
You might have a look to the Pull Request which solve the problem in a different way.
from gitdiffmargin.
Yes; that PR is exactly what I was going to suggest.
(since you're only using new constants, not new APIs)
from gitdiffmargin.
Aside from inlining the constants, you have to use different values for the [MarginContainer]
attribute, since the graphics show next to the scroll bar in 2010-2012, but over the scroll bar in 2013+. The rest of it was just improvements for loading and debugging the project.
from gitdiffmargin.
Related Issues (20)
- Failed to install the extension (VS 2017, VS 2019) HOT 8
- Issue publishing version for Visual Studio 2022 to Visual Studio Marketplace HOT 4
- Extension fails to load with error System.IO.FileNotFoundException HOT 6
- Missing icons HOT 5
- Icons are invisible on dark theme HOT 2
- It's annoying behaviour observed with Quick Search
- Extension not activated when opened solution not having any opened documents
- Extension stopped working until disabling and reenabling (persisting through restarts) HOT 6
- CRLF mismatch - whole file shown as modified HOT 1
- VS 2019 Installation Error HOT 3
- Try dogged HOT 1
- Installer size
- Next/Previous function in tool bar and assigned to hot keys don't work HOT 22
- Not working in VS 2022 (Version 17.1.0) HOT 2
- Not working Visual Studio 2022 17.2.2 HOT 7
- Keyboard shortcuts for GitDiffMargin.NextChange & GitDiffMarginPreviousChange don't work HOT 2
- Insert "manual" into addon description.
- GitDiffMargin.ShowPopup shortcut not working in VS2019
- Hotkeys GitDiffMargin.NextChange or PreviousChange does nothing HOT 1
- VS2022, GitDiffMargin indicator wrongly shows a change, but VS2022 diff margin correctly shows an addition. HOT 2
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 gitdiffmargin.