From 311a53f8f42fabe84b3635ce41ef55ead1bb50d5 Mon Sep 17 00:00:00 2001 From: miruka Date: Fri, 27 Mar 2020 07:06:38 -0400 Subject: [PATCH] =?UTF-8?q?"Unselect"=20=E2=86=92=20"Deselect"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- INSTALL.md | 51 ++++++++++++------- packaging/flatpak/README.md | 15 ++++-- src/backend/user_files.py | 2 +- src/gui/Pages/Chat/Timeline/EventDelegate.qml | 6 +-- src/gui/Pages/Chat/Timeline/EventList.qml | 2 +- ...messages.svg => deselect-all-messages.svg} | 0 6 files changed, 48 insertions(+), 28 deletions(-) rename src/icons/thin/{unselect-all-messages.svg => deselect-all-messages.svg} (100%) diff --git a/INSTALL.md b/INSTALL.md index e2ba3ccc..3cea6c8f 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -5,6 +5,8 @@ but compiling on Windows and macOS should be possible with the right tools. - [Releases](#releases) - [Linux](#linux) + - [AppImage](#appimage) + - [Flatpak](#flatpak) - [Manual installation](#manual-installation) - [Environment variables](#environment-variables) - [Package manager dependencies](#package-manager-dependencies) @@ -18,36 +20,49 @@ but compiling on Windows and macOS should be possible with the right tools. - [Installing PyOtherSide manually](#installing-pyotherside-manually) - [Installing libolm manually](#installing-libolm-manually) - [Installing Mirage](#installing-mirage) -- [Common issues](#common-issues) - - [cffi version mismatch](#cffi-version-mismatch) - - [Component is not ready](#component-is-not-ready) + - [Common issues](#common-issues) + - [cffi version mismatch](#cffi-version-mismatch) + - [Component is not ready](#component-is-not-ready) ## Releases ### Linux -For **x86 64bit glibc-based systems**, Mirage is available as an **AppImage** -on the [release page](https://github.com/mirukana/mirage/releases). -For other architectures and musl-based distros, see the -[manual installation section](#manual-installation). +For developement, or if none of the release options are satisfying, +see [manual installation](#manual-installation). + +#### AppImage + +For **x86 64bit glibc-based systems**, Mirage is available as an AppImage +on the [release page](https://github.com/mirukana/mirage/releases). AppImages are single executable files that contain the app and all its dependencies. Mirage images are built in Ubuntu 16.04, and should therefore run on any distro -released in 2016 or later. +released in April 2016 or later. -To run from a terminal: +[How to start AppImages](https://docs.appimage.org/introduction/quickstart.html#how-to-run-an-appimage) +(TL;DR: `chmod +x Mirage-*.AppImage && ./Mirage-*.AppImage`) + +#### Flatpak + +For **x86 32bit or musl-based systems**, Mirage is also available +as a Flatpak +on the [release page](https://github.com/mirukana/mirage/releases). + +To install and run it: ```sh -chmod +x Mirage-x86_64.AppImage -./Mirage-x86_64.AppImage + flatpak install --user flathub org.kde.Platform//5.12 mirage-*.flatpak + flatpak run io.github.mirukana.mirage ``` -To run from a file manager, give executable permission in the file's -properties and double-click to launch. -[More detailed instructions](https://docs.appimage.org/introduction/quickstart.html#ref-quickstart) +If the download fails for some reason, run `flatpak repair` before retrying. +For **other architectures**, clone the repository and see +[packaging/flatpak/README.md](packaging/flatpak/README.md) to build the +package on your machine. ## Manual Installation @@ -217,7 +232,7 @@ sudo make install ``` -## Installing Mirage +### Installing Mirage After following the above sections instructions depending on your system, clone the repository, install the python dependencies, compile and install: @@ -239,9 +254,9 @@ if you have trouble installing it. If everything went fine, run `mirage` to start. -## Common Issues +### Common Issues -### cffi version mismatch +#### cffi version mismatch When installing the python dependencies, if you get a version mismatch error related to `cffi`, try: @@ -250,7 +265,7 @@ related to `cffi`, try: pip3 install --user --upgrade --force-reinstall cffi ``` -### Component is not ready +#### Component is not ready If the application doesn't start when you run `mirage` and shows a `QQmlComponent: Component is not ready` message in the terminal, diff --git a/packaging/flatpak/README.md b/packaging/flatpak/README.md index fce5a2e7..9c79cd4d 100644 --- a/packaging/flatpak/README.md +++ b/packaging/flatpak/README.md @@ -2,16 +2,21 @@ ## Building Flatpak -To build flatpak package, you will need flatpak, flatpak-builder, and -KDE 5.12 runtime with SDK. flatpak-builder is usually available from -the same repository as flatpak. See https://flatpak.org/setup/ for -setting it up. To install runtimes (adjust as needed if you prefer -system-wide installation): +To build the Flatpak package, you will need `flatpak`, `flatpak-builder`, and +KDE 5.12 runtime with SDK. `flatpak-builder` is usually available from +the same repository as `flatpak`. + +[Flatpak setup instructions](https://flatpak.org/setup/) + +To install the runtimes (remove the `--user` flag and run as root if you +prefer system-wide installation): ``` flatpak install --user flathub org.kde.Platform//5.12 org.kde.Sdk//5.12 ``` +If the download fails for some reason, run `flatpak repair` before retrying. + To build, run from the root of the project: ``` diff --git a/src/backend/user_files.py b/src/backend/user_files.py index 17ebc659..f35dc45a 100644 --- a/src/backend/user_files.py +++ b/src/backend/user_files.py @@ -270,7 +270,7 @@ class UISettings(JSONDataFile): "10": "Alt+0", }, - "unfocusOrUnselectAllMessages": ["Escape"], + "unfocusOrDeselectAllMessages": ["Escape"], "focusPreviousMessage": ["Ctrl+Up", "Ctrl+K"], "focusNextMessage": ["Ctrl+Down", "Ctrl+J"], "toggleSelectMessage": ["Ctrl+Space"], diff --git a/src/gui/Pages/Chat/Timeline/EventDelegate.qml b/src/gui/Pages/Chat/Timeline/EventDelegate.qml index 7833b39d..63a43b4f 100644 --- a/src/gui/Pages/Chat/Timeline/EventDelegate.qml +++ b/src/gui/Pages/Chat/Timeline/EventDelegate.qml @@ -144,14 +144,14 @@ HColumnLayout { HMenuItem { icon.name: "toggle-select-message" - text: eventDelegate.checked ? qsTr("Unselect") : qsTr("Select") + text: eventDelegate.checked ? qsTr("Deselect") : qsTr("Select") onTriggered: eventDelegate.toggleChecked() } HMenuItem { visible: eventList.selectedCount >= 2 - icon.name: "unselect-all-messages" - text: qsTr("Unselect all") + icon.name: "deselect-all-messages" + text: qsTr("Deselect all") onTriggered: eventList.checked = {} } diff --git a/src/gui/Pages/Chat/Timeline/EventList.qml b/src/gui/Pages/Chat/Timeline/EventList.qml index 3eb1074a..42751614 100644 --- a/src/gui/Pages/Chat/Timeline/EventList.qml +++ b/src/gui/Pages/Chat/Timeline/EventList.qml @@ -15,7 +15,7 @@ Rectangle { HShortcut { - sequences: window.settings.keys.unfocusOrUnselectAllMessages + sequences: window.settings.keys.unfocusOrDeselectAllMessages onActivated: { eventList.currentIndex !== -1 ? eventList.currentIndex = -1 : diff --git a/src/icons/thin/unselect-all-messages.svg b/src/icons/thin/deselect-all-messages.svg similarity index 100% rename from src/icons/thin/unselect-all-messages.svg rename to src/icons/thin/deselect-all-messages.svg