Cherry-picking upstream release 0.7.0.

* Removed build dependency libfm-dev
* Removed build dependency libmenu-cache-dev
* Bumped build dependency libfm-qt-def to >= 0.13.0~
* Bumped build dependency lxqt-build-tools to >= 0.5.0~
* Moved debian/.gitignore to ./.gitignore
ubuntu/disco debian/0.7.0-1
Alf Gaida 7 years ago
parent 53c7186f49
commit afc582fbd8

7
.gitignore vendored

@ -0,0 +1,7 @@
debian/*.debhelper
debian/*.log
debian/*.substvars
debian/debhelper-build-stamp
debian/files
debian/lximage-qt/

@ -1,9 +1,9 @@
Upstream Authors:
LXQt team: http://lxqt.org
LXQt team: https://lxqt.org
Hong Jen Yee (PCMan) <pcman.tw@gmail.com>
Copyright:
Copyright (c) 2013-2017 LXQt team
Copyright (c) 2013-2018 LXQt team
License: GPL-2+ and LGPL-2.1+
The full text of the licenses can be found in the 'COPYING' file.

@ -1,7 +1,22 @@
lximage-qt-0.6.0 / 2017-10-21
lximage-qt-0.7.0 / 2018-05-21
=============================
* Bumped minor version to 7
* Spanish translation update
* Just made it compilable again
* Removed not needed release.sh
* CMake: Prevent in-source builds
* fix some http->https
* Fix some mentions of LXDE
* Drop Qt foreach
* cmake: Handle CMP0071
* Add Spanish desktop entries
0.6.0 / 2017-10-21
==================
* Release 0.6.0: Update changelog
* Add ImageShack upload provider.
* Fix warnings issued by GCC and Clang.
* Ensure file is closed when upload finishes.

@ -4,13 +4,14 @@ project(lximage-qt)
include(GNUInstallDirs)
set(MAJOR_VERSION 0)
set(MINOR_VERSION 6)
set(MINOR_VERSION 7)
set(PATCH_VERSION 0)
set(LXIMAGE_VERSION ${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION})
set(LXQTBT_MINIMUM_VERSION "0.4.0")
set(LXQTBT_MINIMUM_VERSION "0.5.0")
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
@ -26,6 +27,7 @@ find_package(lxqt-build-tools ${LXQTBT_MINIMUM_VERSION} REQUIRED)
find_package(Exif REQUIRED)
message(STATUS "Building with Qt ${Qt5Core_VERSION}")
include(LXQtPreventInSourceBuilds)
include(LXQtCompilerSettings NO_POLICY_SCOPE)
# TODO: make the X11 stuff optional.

@ -2,24 +2,33 @@
## Overview
LXImage-Qt is the Qt port of LXImage, a simple and fast image viewer.
LXImage-Qt is the Qt port of LXImage, a simple and fast image viewer.
In addition it features a tool to take screenshots.
In addition it features a tool to take screenshots.
It is maintained by the LXQt project but can be used independently from this desktop environment.
It is maintained by the LXQt project but can be used independently from this
desktop environment.
## Installation
### Compiling source code
Runtime dependencies are qtx11extras and [libfm-qt](https://github.com/lxde/libfm-qt) (LXImage-Qt used to depend on [PCManFM-Qt](https://github.com/lxde/pcmanfm-qt) but the relevant code belongs to what was outsourced in libfm-qt).
Additional build dependencies are CMake and optionally Git to pull latest VCS checkouts. The localization files were outsourced to repository [lxqt-l10n](https://github.com/lxde/lxqt-l10n) so the corresponding dependencies are needed, too. Please refer to this repository's `README.md` for further information.
Runtime dependencies are qtx11extras and [libfm-qt](https://github.com/lxqt/libfm-qt)
(LXImage-Qt used to depend on [PCManFM-Qt](https://github.com/lxqt/pcmanfm-qt)
but the relevant code belongs to what was outsourced in libfm-qt).
Additional build dependencies are CMake and optionally Git to pull latest VCS
checkouts. The localization files were outsourced to repository
[lxqt-l10n](https://github.com/lxqt/lxqt-l10n) so the corresponding dependencies
are needed, too. Please refer to this repository's `README.md` for further information.
Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` has to be set to `/usr` on most operating systems.
Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX`
has to be set to `/usr` on most operating systems.
To build run `make`, to install `make install` which accepts variable `DESTDIR` as usual.
To build run `make`, to install `make install` which accepts variable `DESTDIR`
as usual.
### Binary packages
Official binary packages are available in Arch Linux, Debian (as of Debian stretch), Fedora and openSUSE (Leap 42.1 and Tumbleweed).
Just use the distributions' package manager to search for string 'lximage'.
Official binary packages are available in Arch Linux, Debian (as of Debian stretch),
Fedora and openSUSE (Leap 42.1 and Tumbleweed). Just use the distributions'
package manager to search for string 'lximage'.

8
debian/.gitignore vendored

@ -1,8 +0,0 @@
/*.debhelper
/*.log
/*.substvars
/debhelper-build-stamp
/files
/lximage-qt/
/lximage-qt-dbg/

11
debian/changelog vendored

@ -1,3 +1,14 @@
lximage-qt (0.7.0-1) experimental; urgency=medium
* Cherry-picking upstream release 0.7.0.
* Removed build dependency libfm-dev
* Removed build dependency libmenu-cache-dev
* Bumped build dependency libfm-qt-def to >= 0.13.0~
* Bumped build dependency lxqt-build-tools to >= 0.5.0~
* Moved debian/.gitignore to ./.gitignore
-- Alf Gaida <agaida@siduction.org> Fri, 25 May 2018 19:36:29 +0200
lximage-qt (0.6.0-4) unstable; urgency=medium
* Bumped compat to 11

7
debian/control vendored

@ -7,16 +7,13 @@ Section: x11
Priority: optional
Build-Depends: debhelper (>= 11~),
libexif-dev,
libglib2.0-dev,
libfm-dev,
libfm-qt-dev (>= 0.12.0),
libfm-qt-dev (>= 0.13.0~),
libkf5windowsystem-dev,
libmenu-cache-dev,
libqt5svg5-dev,
libqt5x11extras5-dev,
libx11-dev,
libxfixes-dev,
lxqt-build-tools (>= 0.4.0)
lxqt-build-tools (>= 0.5.0~)
Standards-Version: 4.1.4
Vcs-Browser: https://salsa.debian.org/lxqt-team/lximage-qt
Vcs-Git: https://salsa.debian.org/lxqt-team/lximage-qt.git

@ -1,2 +1 @@
tar-ignore = .gitignore
tar-ignore = lximage-qt.kdev4

@ -1,28 +0,0 @@
#!/bin/bash
PROJECT="lximage-qt"
version="$1"
prefix=$PROJECT-$version
shift
if [[ -z $version ]]; then
>&2 echo "USAGE: $0 <tag>"
exit 1
fi
mkdir -p "dist/$version"
echo "Creating $prefix.tar.gz"
git archive -9 --format tar.gz $version --prefix="$prefix/" > "dist/$version/$prefix.tar.gz"
gpg --armor --detach-sign "dist/$version/$prefix.tar.gz"
echo "Creating $prefix.tar.xz"
git archive -9 --format tar.xz $version --prefix="$prefix/" > "dist/$version/$prefix.tar.xz"
gpg --armor --detach-sign "dist/$version/$prefix.tar.xz"
cd "dist/$version"
sha1sum --tag *.tar.gz *.tar.xz >> CHECKSUMS
sha256sum --tag *.tar.gz *.tar.xz >> CHECKSUMS
cd ..
echo "Uploading to lxqt.org..."
scp -r "$version" "downloads.lxqt.org:/srv/downloads.lxqt.org/$PROJECT/"

@ -33,13 +33,15 @@ set(lximage-qt_SRCS
upload/uploaddialog.cpp
)
qt5_add_dbus_adaptor(lximage-qt_SRCS
qt5_add_dbus_adaptor(lximage-qt_DBUS_SRCS
org.lxde.LxImage.Application.xml
application.h
LxImage::Application
applicationadaptor
ApplicationAdaptor
)
set_property(SOURCE ${lximage-qt_DBUS_SRCS} PROPERTY SKIP_AUTOGEN ON)
list(APPEND lximage-qt_SRCS "${lximage-qt_DBUS_SRCS}")
set(lximage-qt_UIS
mainwindow.ui
@ -48,7 +50,6 @@ set(lximage-qt_UIS
upload/uploaddialog.ui
)
qt5_wrap_ui(lximage-qt_UI_H ${lximage-qt_UIS})
# add translation for lximage-qt
include(LXQtTranslateTs)
@ -80,7 +81,7 @@ install(FILES ${desktop_files} DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applica
add_executable(lximage-qt
${lximage-qt_SRCS}
${lximage-qt_UI_H}
${lximage-qt_UIS}
${desktop_files}
${QM_FILES}
)
@ -88,6 +89,7 @@ add_executable(lximage-qt
add_definitions(
-DLXIMAGE_DATA_DIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}/lximage-qt"
-DLXIMAGE_VERSION="${LXIMAGE_VERSION}"
-DQT_NO_FOREACH
)
set(QT_LIBRARIES Qt5::Widgets Qt5::Network Qt5::Core Qt5::DBus Qt5::PrintSupport Qt5::X11Extras Qt5::Svg)

@ -104,7 +104,7 @@ bool Application::parseCommandLineArgs() {
const bool screenshotTool = parser.isSet(screenshotOption);
QStringList paths;
Q_FOREACH(QString arg, args) {
for(const QString& arg : args) {
QFileInfo info(arg);
paths.push_back(info.absoluteFilePath());
}
@ -151,7 +151,7 @@ void Application::newWindow(QStringList files) {
window->show();
}
else {
Q_FOREACH(QString fileName, files) {
for(const QString& fileName : qAsConst(files)) {
window = createWindow();
window->openImageFile(fileName);
@ -167,7 +167,8 @@ void Application::newWindow(QStringList files) {
}
void Application::applySettings() {
Q_FOREACH(QWidget* window, topLevelWidgets()) {
const auto windows = topLevelWidgets();
for(QWidget* window : windows) {
if(window->inherits("LxImage::MainWindow"))
static_cast<MainWindow*>(window)->applySettings();
}

@ -346,7 +346,7 @@ void ImageView::generateCache() {
// convert to the coordinate of the original image
cachedSceneRect_ = viewportToScene(cachedRect_);
// create a sub image of the visible without real data copy
// Reference: http://stackoverflow.com/questions/12681554/dividing-qimage-to-smaller-pieces
// Reference: https://stackoverflow.com/questions/12681554/dividing-qimage-to-smaller-pieces
QRect subRect = image_.rect().intersected(cachedSceneRect_);
const uchar* bits = image_.constBits();
unsigned int offset = subRect.x() * image_.depth() / 8 + subRect.y() * image_.bytesPerLine();

@ -89,7 +89,7 @@ void LoadImageJob::exec() {
exif_loader.reset();
if (exif_data) {
/* reference for EXIF orientation tag:
* http://www.impulseadventure.com/photo/exif-orientation.html */
* https://www.impulseadventure.com/photo/exif-orientation.html */
ExifEntry* orient_ent = exif_data_get_entry(exif_data.get(), EXIF_TAG_ORIENTATION);
if(orient_ent) { /* orientation flag found in EXIF */
gushort orient;

@ -39,7 +39,6 @@
#include <QDesktopWidget>
#include <QGraphicsSvgItem>
#include "application.h"
#include <libfm-qt/path.h>
#include <libfm-qt/folderview.h>
#include <libfm-qt/filepropsdialog.h>
#include <libfm-qt/fileoperation.h>
@ -143,9 +142,9 @@ MainWindow::~MainWindow() {
void MainWindow::on_actionAbout_triggered() {
QMessageBox::about(this, tr("About"),
tr("LXImage - a simple and fast image viewer\n\n"
tr("LXImage-Qt - a simple and fast image viewer\n\n"
"Copyright (C) 2013\n"
"LXDE Project: http://lxde.org/\n\n"
"LXQt Project: https://lxqt.org/\n\n"
"Authors:\n"
"Hong Jen Yee (PCMan) <pcman.tw@gmail.com>"));
}
@ -906,7 +905,8 @@ void MainWindow::changeEvent(QEvent* event) {
// is disabled. We needs to add the actions to the main window manually to enable the
// shortcuts again.
ui.menubar->hide();
Q_FOREACH(QAction* action, ui.menubar->actions()) {
const auto actions = ui.menubar->actions();
for(QAction* action : qAsConst(actions)) {
if(!action->shortcut().isEmpty())
addAction(action);
}
@ -917,7 +917,8 @@ void MainWindow::changeEvent(QEvent* event) {
ui.view->setFrameStyle(QFrame::StyledPanel|QFrame::Sunken);
ui.view->setBackgroundBrush(QBrush(app->settings().bgColor()));
// now we're going to re-enable the menu, so remove the actions previously added.
Q_FOREACH(QAction* action, ui.menubar->actions()) {
const auto actions_ = ui.menubar->actions();
for(QAction* action : qAsConst(actions_)) {
if(!action->shortcut().isEmpty())
removeAction(action);
}

@ -58,7 +58,8 @@ void PreferencesDialog::accept() {
settings.setFallbackIconTheme(newIconTheme);
QIcon::setThemeName(newIconTheme);
// update the UI by emitting a style change event
Q_FOREACH(QWidget *widget, QApplication::allWidgets()) {
const auto allWidgets = QApplication::allWidgets();
for(QWidget *widget : allWidgets) {
QEvent event(QEvent::StyleChange);
QApplication::sendEvent(widget, &event);
}
@ -76,9 +77,9 @@ void PreferencesDialog::accept() {
static void findIconThemesInDir(QHash<QString, QString>& iconThemes, QString dirName) {
QDir dir(dirName);
QStringList subDirs = dir.entryList(QDir::AllDirs);
const QStringList subDirs = dir.entryList(QDir::AllDirs);
GKeyFile* kf = g_key_file_new();
Q_FOREACH(QString subDir, subDirs) {
for(QString subDir : subDirs) {
QString indexFile = dirName % '/' % subDir % "/index.theme";
if(g_key_file_load_from_file(kf, indexFile.toLocal8Bit().constData(), GKeyFileFlags(0), NULL)) {
// FIXME: skip hidden ones

@ -0,0 +1,3 @@
Name[es]=Captura de pantalla
GenericName[es]=Captura de pantalla
Comment[es]=Toma capturas de la pantalla

@ -0,0 +1,3 @@
Name[es]=LXImage
GenericName[es]=Visor de imágenes
Comment[es]=El visor de imágenes de LXQt
Loading…
Cancel
Save