Flameshot was unable to start new captures after saving with
Ctrl+s while having a text area active from the Text tool.
This was caused by the overloaded call to close() which
was deleting the text area instead of closing the capture
and the consequent call of the destructor. That caused an
always active capture session.
Currently info window will pop up at the topleft corner of the screen,
which is rather bothering. This patch will move the window to
screen center when popped up.
Since QGuiApplication::ScreenAt() is introduced since Qt 5.10, the
code will only take effect when compiled against Qt >= 5.10.
Signed-off-by: Boyuan Yang <073plan@gmail.com>
They provide context when using Qt Liguist, as it shows the source code where it is being used.
Also replaced QT (capital T) with Qt, as the latter is the correct name.
SVG images have been optimized with svgo, this will slightly reduce package size though the main reason for this was to remove unneeded markup.
Image paths have been changed and merged, now the directory tree looks like this:
img
├── app
├── material
│ ├── black
│ └── white
└── preview
The reason to merge the paths is to avoid duplicate files for buttons and configuration.
SVG icons are used by default now, PNG images have not been deleted from the images directory, but they were deleted from the graphics.qrc resource file.
All image paths were updated accordingly, except in the tray icon, I could not make it work using the SVG image.
Currently keyboard shortcuts cannot be changed, double clicking a cell in the Information window only changes the text, not the shortcut.
This could help to avoid user confusion, and should be reverted once the application adds an option to change keyboard shortcuts.
normalize only swaps the sides if width() or height() is < 0,
but we need it to happen when it is <=0 because with QRect's
normalized method we get negative geometry and that causes a bug
when we position the buttons.
closes#11
Add an initial version of the text tool.
This commit adds:
- Basic text tool.
- On demand thickness and color update.
- Generalized logic for future widget based tools.
The core now has a method requestCapture, which receives a
CaptureRequest object with all the needed information.
This reduces code duplication in future features.
New improved selection code:
- Selection decopuled into a new class
- When you drag the selection against the limits it won't become
permanently smaller, it will "bounce" trying to recover its size.
If you drop it again it will adapt its size to the borders of the
screen.
- Fixed bugs in the button position algorithm.
- Implemented selection animations for future implementations.
The side panel opens with the Space key, this panel can contain
widgets to assist the capture with more features.
This commit fixes the preview of the tool hiding it when the
mouse hovers a widget. This is more needed now having a new widget
inside the CaptureWidget.