obiwankennedy / hotshots Goto Github PK
View Code? Open in Web Editor NEWScreenshot and annotation software
License: GNU General Public License v2.0
Screenshot and annotation software
License: GNU General Public License v2.0
HotShots is an application for capturing screens and saving them in a variety of image formats as well as adding annotations and graphical data (arrows, lines, texts, ...). You can also upload your creations to the web (FTP/some web services). Because HotShots is written with Qt, HotShots runs on Windows, Linux (MacOSX isn't tested yet). You want to help ? You can proposed you as translator on transifex.com (HotShots project) or post feedbacks on SourceForge: - http://sourceforge.net/p/hotshots/tickets for bug report or feature request - http://sourceforge.net/p/hotshots/discussion/ for general feedbacks You can also help me by correcting my brief help page (I'm sure you've noticed that English is not my mother tongue! :)) Contact me xbee at xbee dot net
I really like Hotshots and it's become an essential part of my workflow. Please keep on with it. As far as I know, it's the only screenshot tool that lets me repeat the last screen selection. this essential for making documentation look consistent.
I recently upgraded to Linux Mint 19. I tried building with qmake -recursive HotShots.pro and get the following error.
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_MULTIMEDIA_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4/QtMultimedia -I/usr/include/qt4 -Isrc/3rdparty/qkeysequencewidget -Isrc/3rdparty/QSgml -Isrc/3rdparty/wwWidgets -Isrc/3rdparty/qt-json -Isrc/3rdparty/qxt -Isrc/uploaders -Isrc/editor -Isrc/editor/items -Isrc/editor/widgets -Isrc/editor/io -Isrc -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -Irelease -Irelease -o release/GroupLayer.o src/editor/GroupLayer.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_MULTIMEDIA_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++-64 -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4/QtMultimedia -I/usr/include/qt4 -Isrc/3rdparty/qkeysequencewidget -Isrc/3rdparty/QSgml -Isrc/3rdparty/wwWidgets -Isrc/3rdparty/qt-json -Isrc/3rdparty/qxt -Isrc/uploaders -Isrc/editor -Isrc/editor/items -Isrc/editor/widgets -Isrc/editor/io -Isrc -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -Irelease -Irelease -o release/EditorWidget.o src/editor/EditorWidget.cpp
src/editor/EditorWidget.cpp:36:10: fatal error: QStandardPaths: No such file or directory
#include
^~~~~~~~~~~~~~~~
compilation terminated.
Makefile.Release:910: recipe for target 'release/EditorWidget.o' failed
make[1]: *** [release/EditorWidget.o] Error 1
make[1]: Leaving directory '/home/brad/HotShots'
Makefile:34: recipe for target 'release' failed
make: *** [release] Error 2
I am running Fedora 33 with KDE, and have set the printscreen button to be my "capture region" shortcut. But this only works when hotshots' interface is in focus. I have selected "use system screen capture shortcuts". With the original (QT4?) version, this worked on Fedora 31. The default screen capture (spectacle) is disabled.
I could create a custom shortcut, if I knew what trigger to use. Is there a command I can call to trigger a screen capture? Or a DBUS trigger?
Thanks
Thanks for continue developing so useful HotShots app and porting to KDE 5.x / Qt5. Will be good to have pre-compiled deb packages for quick install on Debian / Ubuntu systems, or PPA with same packages.
on both host debian with qt5 and flatpak sandbox compile fails.
src/AboutDialog.cpp: In member function ‘void AboutDialog::updateInfosImageFormats()’:
src/AboutDialog.cpp:192:76: error: conversion from ‘QHash<QString, QString>’ to non-scalar type ‘QMap<QString, QString>’ requested
192 | QMap<QString, QString> longFormats = MiscFunctions::getLongImageFormats();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/usr/lib/qt5/bin/moc -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_X11EXTRAS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB --include /home/rizvan/.build/HotShots/release/moc_predefs.h -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/home/rizvan/.build/HotShots -I/home/rizvan/.build/HotShots/src/3rdparty/qkeysequencewidget -I/home/rizvan/.build/HotShots/src/3rdparty/QSgml -I/home/rizvan/.build/HotShots/src/3rdparty/wwWidgets -I/home/rizvan/.build/HotShots/src/3rdparty/qt-json -I/home/rizvan/.build/HotShots/src/3rdparty/qxt -I/home/rizvan/.build/HotShots/src/uploaders -I/home/rizvan/.build/HotShots/src/editor -I/home/rizvan/.build/HotShots/src/editor/items -I/home/rizvan/.build/HotShots/src/editor/widgets -I/home/rizvan/.build/HotShots/src/editor/io -I/home/rizvan/.build/HotShots/src -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtMultimedia -I/usr/include/x86_64-linux-gnu/qt5/QtX11Extras -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtXml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/10 -I/usr/include/x86_64-linux-gnu/c++/10 -I/usr/include/c++/10/backward -I/usr/lib/gcc/x86_64-linux-gnu/10/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include src/editor/items/EditorImageItem.h -o release/moc_EditorImageItem.cpp
/usr/lib/qt5/bin/moc -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_X11EXTRAS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB --include /home/rizvan/.build/HotShots/release/moc_predefs.h -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/home/rizvan/.build/HotShots -I/home/rizvan/.build/HotShots/src/3rdparty/qkeysequencewidget -I/home/rizvan/.build/HotShots/src/3rdparty/QSgml -I/home/rizvan/.build/HotShots/src/3rdparty/wwWidgets -I/home/rizvan/.build/HotShots/src/3rdparty/qt-json -I/home/rizvan/.build/HotShots/src/3rdparty/qxt -I/home/rizvan/.build/HotShots/src/uploaders -I/home/rizvan/.build/HotShots/src/editor -I/home/rizvan/.build/HotShots/src/editor/items -I/home/rizvan/.build/HotShots/src/editor/widgets -I/home/rizvan/.build/HotShots/src/editor/io -I/home/rizvan/.build/HotShots/src -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtMultimedia -I/usr/include/x86_64-linux-gnu/qt5/QtX11Extras -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtXml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/10 -I/usr/include/x86_64-linux-gnu/c++/10 -I/usr/include/c++/10/backward -I/usr/lib/gcc/x86_64-linux-gnu/10/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include src/editor/items/EditorHighlighterItem.h -o release/moc_EditorHighlighterItem.cpp
/usr/lib/qt5/bin/moc -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_X11EXTRAS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB --include /home/rizvan/.build/HotShots/release/moc_predefs.h -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/home/rizvan/.build/HotShots -I/home/rizvan/.build/HotShots/src/3rdparty/qkeysequencewidget -I/home/rizvan/.build/HotShots/src/3rdparty/QSgml -I/home/rizvan/.build/HotShots/src/3rdparty/wwWidgets -I/home/rizvan/.build/HotShots/src/3rdparty/qt-json -I/home/rizvan/.build/HotShots/src/3rdparty/qxt -I/home/rizvan/.build/HotShots/src/uploaders -I/home/rizvan/.build/HotShots/src/editor -I/home/rizvan/.build/HotShots/src/editor/items -I/home/rizvan/.build/HotShots/src/editor/widgets -I/home/rizvan/.build/HotShots/src/editor/io -I/home/rizvan/.build/HotShots/src -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtMultimedia -I/usr/include/x86_64-linux-gnu/qt5/QtX11Extras -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtXml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/10 -I/usr/include/x86_64-linux-gnu/c++/10 -I/usr/include/c++/10/backward -I/usr/lib/gcc/x86_64-linux-gnu/10/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include src/editor/items/EditorEncircleItem.h -o release/moc_EditorEncircleItem.cpp
/usr/lib/qt5/bin/moc -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_X11EXTRAS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB --include /home/rizvan/.build/HotShots/release/moc_predefs.h -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/home/rizvan/.build/HotShots -I/home/rizvan/.build/HotShots/src/3rdparty/qkeysequencewidget -I/home/rizvan/.build/HotShots/src/3rdparty/QSgml -I/home/rizvan/.build/HotShots/src/3rdparty/wwWidgets -I/home/rizvan/.build/HotShots/src/3rdparty/qt-json -I/home/rizvan/.build/HotShots/src/3rdparty/qxt -I/home/rizvan/.build/HotShots/src/uploaders -I/home/rizvan/.build/HotShots/src/editor -I/home/rizvan/.build/HotShots/src/editor/items -I/home/rizvan/.build/HotShots/src/editor/widgets -I/home/rizvan/.build/HotShots/src/editor/io -I/home/rizvan/.build/HotShots/src -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtMultimedia -I/usr/include/x86_64-linux-gnu/qt5/QtX11Extras -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtXml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/10 -I/usr/include/x86_64-linux-gnu/c++/10 -I/usr/include/c++/10/backward -I/usr/lib/gcc/x86_64-linux-gnu/10/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include src/editor/items/EditorEllipseItem.h -o release/moc_EditorEllipseItem.cpp
/usr/lib/qt5/bin/moc -DQT_NO_DEBUG -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_X11EXTRAS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB --include /home/rizvan/.build/HotShots/release/moc_predefs.h -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -I/home/rizvan/.build/HotShots -I/home/rizvan/.build/HotShots/src/3rdparty/qkeysequencewidget -I/home/rizvan/.build/HotShots/src/3rdparty/QSgml -I/home/rizvan/.build/HotShots/src/3rdparty/wwWidgets -I/home/rizvan/.build/HotShots/src/3rdparty/qt-json -I/home/rizvan/.build/HotShots/src/3rdparty/qxt -I/home/rizvan/.build/HotShots/src/uploaders -I/home/rizvan/.build/HotShots/src/editor -I/home/rizvan/.build/HotShots/src/editor/items -I/home/rizvan/.build/HotShots/src/editor/widgets -I/home/rizvan/.build/HotShots/src/editor/io -I/home/rizvan/.build/HotShots/src -I/usr/include/qxt/QxtGui -I/usr/include/qxt/QxtCore -I/usr/include/QxtGui -I/usr/include/QxtCore -I/usr/local/Qxt/include/QxtGui -I/usr/local/Qxt/include/QxtCore -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -I/usr/include/x86_64-linux-gnu/qt5/QtWidgets -I/usr/include/x86_64-linux-gnu/qt5/QtMultimedia -I/usr/include/x86_64-linux-gnu/qt5/QtX11Extras -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtXml -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/10 -I/usr/include/x86_64-linux-gnu/c++/10 -I/usr/include/c++/10/backward -I/usr/lib/gcc/x86_64-linux-gnu/10/include -I/usr/local/include -I/usr/include/x86_64-linux-gnu -I/usr/include src/editor/items/EditorCurveItem.h -o release/moc_EditorCurveItem.cpp
make[1]: *** [Makefile.Release:1631: release/AboutDialog.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/rizvan/.build/HotShots'
make: *** [Makefile:42: release] Error 2
For flatpak which needs /app as DESTDIR or ROOT or PREFIX=/app, I have to manually patch/sed it. Kindly create a script or an option to relocate the software. Thank you
build-commands:
- qmake -recursive HotShots.pro
- sed 's/\/usr\/local/\/app/g' -i Makefile.Release
- sed 's/\/usr\/local/\/app/g' -i Makefile.Debug
- make install
- mkdir -p ${FLATPAK_DEST}/share/icons/hicolor/128x128/apps
- install -Dm644 /app/share/pixmaps/hotshots.png
/app/share/icons/hicolor/128x128/apps/io.github.HotShots.png
- install -Dm644 io.github.HotShots.desktop /app/share/applications/
- mkdir -p /app/share/metainfo
- install -Dm644 io.github.HotShots.metainfo.xml /app/share/metainfo
Can you please update your Ubuntu PPA repository with Hotshots for Qt5/KDE5 https://launchpad.net/~rolisteam/+archive/ubuntu/rolisteamdev to fresh Ubunu releases (18.04, etc)? Thanks!
I successfully installed hotshots from source code on my new LM 20.2.
Then I want to open different images not from itself HOTSHOTS, but
RIGHT CLICK image file at Nemo -> OPEN WITH -> HOTSHOTS
At Nemo I can choose applications to open different files.
But when I write at Nemo
"/usr/local/bin/hotshots %f"
and then choose HOTSHOTS -> it writes "HOTSHOTS is already RUNNING"
and not open image file which I have highlighted.
The same for MENU(LM)->Resently used files and Xviewer and Pix.
AT Xviewer and PIX I cannot choose different applications to open images
AT MENU(LM) there are "OPEN with another application", but it doesn't work.
HOTSHOST application made such a way it is more convenient to use it from image files, not from application itself.
On my another system, UBUNTU 16.04 CINNAMON EDITION, everything is working well.
For UBUNTU 16.04, I installed HotShots from a repositoriy.
I think when I start hotshots by "/usr/local/bin/hotshots %f" it open screenshoter, but I need to open editor of images.
Hi,
I would like to publish and maintain HotShots at flathub with your kind permission.
Could you be interested in co-maintaining HotShots flatpak for flathub?
By custom I am making a request to port Hotshots to Flathub. Flathub is a service for universal binary compatible Linux apps. This will insure that Hotshots will be around for years to come and others will have the same benefit from this software as I did. I would hate for this software to be lost to history, as it is vital to my workflow. So if you are interested in porting it let us know. Thank you so much for rebuilding it in QT5.
The CMake project is currently in a subdirectory, while convention tends to have it in the root of the project. There is additionally a CMakeCache.txt
file that appears to have been accidentally committed; incidentally, this is the exact reason that the CMake project and build directory are kept separate.
HotShots.desktop file:
[Desktop Entry]
Name=HotShots
Comment=Screenshot and Annotation Editor
Type=Application
GenericName=Screenshot and Annotation Editor
Exec=/app/bin/hotshots
Categories=Graphics;
Icon=io.github.HotShots
MimeType=application/x-hot;
HotShots.metainfo.xml
<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop-application">
<id>io.github.HotShots</id>
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-2.0</project_license>
<name>HotShots</name>
<releases>
<release version="2.2.0" date="2014-09-06"/>
</releases>
<summary>Powerful and simple to use screenshot software</summary>
<description>
<p>
HotShots is an application for capturing screens and saving
them in a variety of image formats as well as adding annotations
and graphical data (arrows, lines, texts, ...)
</p>
</description>
<content_rating type="oars-1.1" />
<translation type="qt">hotshots</translation>
<screenshots>
<screenshot type="default">
<image>https://a.fsdn.com/con/app/proj/hotshots/screenshots/aa.png</image>
</screenshot>
<screenshot>
<image>https://a.fsdn.com/con/app/proj/hotshots/screenshots/editor.png</image>
</screenshot>
</screenshots>
<url type="homepage">https://github.com/obiwankennedy/HotShots</url>
<update_contact>https://github.com/obiwankennedy/HotShots/issues/new</update_contact>
<launchable type="desktop-id">io.github.HotShots.desktop</launchable>
</component>
I am wondering.
I like and use this application so I would like to contribute
Hello, I find it unlikely that this app will survive but I really don't want this software to die as it is valuable for my workflow. You porting it to QT5 would have been all that was needed, but because it is a screenshot application it needs wayland support or the screenshot features can be removed and this can be forked into stand alone "hotshots editor" where images and clipboard data is uploaded and edited.
I am aware the new "flameshot app" exist but it is not as powerful as Hotshots.
Do you think it is possible hotshots can be forked to remove the screenshot stuff, but keep the image annotation editor?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.