Comments (7)
Currently it would not be possible to build it on mono, as Greenshot is *very * tightly integrated into the Windows OS. The way we use the hotkeys and capturing would most likely NOT work on Mono, so we would first need to make it possible to replace these parts with different implementations.
I am working very hard on modularizing Greenshot, where as a result it should be easier to replace parts with an implementation which might work on Mono. By making the parts "stand alone", it's also easiert to test only this part. Currently in Greenshot 1.2 is just a bunch of Code where one small thing will make it fail and you will have no idea where the problem lies or how to fix this.
The current state of making Greenshot more modular:
- a module for loading (and starting) add-ons: Dapplo.Addons
- a module for configuration and language support : Dapplo.Config
- a module for making Http calls the same for all addons Dapplo.HttpExtensions this prevents that one writes a need "plug-in" (addon, extension, whatever you call it) which doesn't work through a proxy when other parst of Greenshot do
- a module for the Jira API, Dapplo.Jira which will be used in the plugin
- a module for the native Windows logic, like finding the location etc, Dapplo.Windows
- And now I will start working on the plug-ins/addons itself, so they get their own repos.
Everything is work in progress, and changing constantly...
Inno-Setup is our installer builder, PortableApps is another, both are not needed to make a working Greenshot. It would work fine, just by having the resulting files in a directory.
But like I said, it would take a LOT of time to "port" the current Greenshot to Mono. Another problem is that I am changing currently so much (see develop branch) that you would be porting a moving target. Besides, I want to see where Microsoft is going with the new .NET core..
Currently it would not be feasable, or maybe that's wrong as everything is possible, I would advice against it... At least wait a few months until I have refactored the project.
P.S.
One person of our Team is working on a prototype for Mac, we don't know if we ever release it but just so you know the final word is not said. Besides time, the biggest problem with a Mac version, is money... I don't want to spend > 1000€ for a laptop, which is money we might never see back... only 1 of our team which exists of 3 people has a Macbook...
from greenshot.
The modules that I recently created alone are already > 21.000 lines of code, as can be seen here: https://www.openhub.net/p/dapplo
If you have little knowledge of .NET... it's a lot to swallow :)
from greenshot.
One last thing... my biggest problem with Mono would be the UI.
We are in the process of removing all Windows.Forms code, and changing to WPF, which is already a lot of work. If we also need to write a new UI for Mono :(
from greenshot.
Understood. Thanks for the thorough answer. This is a bummer to me because I love greenshot a lot and would love to use a few features from it, but Mac support is a must for me. As this is quite a big overhaul, I'll let it pass and check again in a few months. Using this as an opportunity to learn .NET and Mono at once seems too big of a leap :)
from greenshot.
Like I said, Mac might happen... still it would never be the same as Greenshot on Windows, not laying any weight on if this is good or bad... just different as it would have a different code base (no reused) and it's based on a different platform (different behavior).
We considered Xamarin, a very popular "platform" for developing applications for multiple platforms, but the pricing is something a bit out of our league... If I understood it correctly it would be 1000$ per developer (3x) per year... Than we need an Apple Store account, and the mac books... that put together and subtracted from our yearly "earnings" from donations, would be a negative amount...
Okay, we might earn a bit more by selling the application... but this again would lower the donations...
And the work that needs to be made before it works...
from greenshot.
Just a small update.
In the mean time I already made some of the components for Greenshot available for the .NET Core (Linux, Mac etc), unfortunately I am far away of having a running Greenshot as there is no UI or capture logic.
- Logging
- HTTP extensions (to connect to cloud services etc)
- Clients for Jira and Confluence
Further more my colleague is working on a Mac version, but this is native.
from greenshot.
We are removing the issues on github, as most people don't read and create feature request or report bugs here... and we already have an issue tracker. Just so you know.
https://greenshot.atlassian.net
from greenshot.
Related Issues (20)
- update ?
- /CLOSEAPPLICATIONS and /FORCECLOSEAPPLICATIONS both produce an interactive prompt on a /VERYSILENT install HOT 1
- Greenshots Capture Window wants to captures the entire desktop instead of a smaller application HOT 1
- Publication: Next Stable Version HOT 7
- Problem to copy into clipboard
- Settings Fonz size to big / does not scale
- Output location different for fullscreen/window
- Close running application automagically when uninstalling
- Greenshot running on .NET 8
- Flickr not supported greenshot default browser
- Payed for Appm in App Store - App Only Accesible in 1 device
- Multi-monitor with different resolution still don't work when screen capture
- Auto save image
- Image Editor lacks a "paint" feature.
- Greenshot doesn't end terminal process after installation
- Is Greenshot screenshot tool for windows discontinued (as I cannot see any updated since 2017)? HOT 8
- Greenshot not compatible with new Outlook version (beta)
- "Optimizing Performance" message in installation setup.
- Take screenshots to directly obtain the text in the image
- Causes black desert onlines anti cheat system to kill game process if greenshot is running(When game first launched)
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 greenshot.