Vasily
730e633d07
Add naive make install for Linux
...
This enables a `sudo make install` that copies the build directory to
the PREFIX directory (/opt/OpenVR-AdvancedSettings/AdvancedSettings by
default).
The entire directory is being copied because Qt is incredibly weird
about how the INSTALLS variable works. From testing it appears that only
files that exist before the build process has started (even the
file_copy process) will be eligible for installation.
If the /OpenVR-AdvancedSettings/ directory is excluded, Qt will attempt
to remove the /opt/ folder on `make uninstall`, this is obviously not
desirable.
2019-08-07 12:53:20 +02:00
Vasily
a560810747
Downgrade gcc version on AppImage build to 7 from 9
...
As described in issue
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/266
the gcc-9 libstdc++ version is not included in Ubuntu 18.04 or
derivatives, which leads to a runtime error.
gcc-7 is the oldest version that has c++17 support. If we didn't need
C++17 support then we could use gcc-5, which is included with Ubuntu
14.04.
2019-08-07 12:53:20 +02:00
Vasily
d36c67bbe3
Update files being copied to binary directory
...
The windows `qt.conf` caused errors on Linux. Now only the absolutely
needed files are copied over.
2019-07-30 10:45:28 +02:00
Vasily
8e43629bb2
Move windeployqt to Qmake
...
`qmake` is better suited for finding `windeployqt`, since it's in the same
directory as `qmake` on windows.
`qmake` is also better suited for finding the build target
(release/debug) vs third party scripts.
`windeployqt` is being forced to run in `cmd` because the syntax is
different for running executables in powershell, which means
`windeployqt` won't be executed and runtime or package errors will
occur.
With the removal of the windeployqt call the deploy step is no longer
needed for building on Windows, since all previous deploy tasks are now
handle by Qmake.
2019-07-30 10:45:28 +02:00
Vasily
94bbd30890
Strip whitespace from version_string line
...
This prevents stray newlines from getting in there.
2019-07-30 10:45:28 +02:00
username223
f65ee06861
Update linux input guide config location
...
The logs are stored in `~/.local/share/AdvancedSettings-Team/OpenVRAdvancedSettings/`, but the config file is stored in `~/.config/AdvancedSettings-Team/`.
2019-07-27 19:50:53 +02:00
Vasily
ed89514667
Remove .txt ending from new license files
2019-07-24 10:54:55 +02:00
Vasily
b5d69c589c
Make Qmake copy package files instead of OS scripts
...
Described in commit 97e203fd89e7cb54c7ce96ce779b2e8cb6ac1374
The python functions are no longer needed since the python script
doesn't handle file copy any more.
2019-07-24 10:54:55 +02:00
Vasily
46c8a62565
Make Qmake copy package files instead of OS scripts
...
Described in commit 97e203fd89e7cb54c7ce96ce779b2e8cb6ac1374
The linux directory in package_files is included even on Windows install
for simplicity and because it takes up less than 1KB.
2019-07-24 10:54:55 +02:00
Vasily
6e088a6ec8
Make Qmake copy licenses instead of OS scripts
...
Described in commit 97e203fd89e7cb54c7ce96ce779b2e8cb6ac1374
Linux was not including any license files by mistake.
2019-07-24 10:54:55 +02:00
Vasily
9fc22ccbb4
Make Qmake copy Readme instead of OS scripts
...
Described in commit 97e203fd89e7cb54c7ce96ce779b2e8cb6ac1374
2019-07-24 10:54:55 +02:00
Vasily
cbac2f9539
Make Qmake copy res directory instead of OS scripts
...
Since Qt 5.6 Qmake has supported the (undocumented) file_copies
function.
Moving to an OS independent version is superior for obvious
reasons.
Use in
https://stackoverflow.com/questions/3984104/qmake-how-to-copy-a-file-to-the-output/54162789#54162789
Uses the same interface as the INSTALLS function described here
https://doc.qt.io/qt-5/qmake-advanced-usage.html#installing-files
Implemented in the file_copies.prf file found here
https://code.qt.io/cgit/qt/qtbase.git/log/mkspecs/features/file_copies.prf
2019-07-24 10:54:55 +02:00
Vasily
6e710a75b3
Add docstrings for new Windows build functions
2019-07-24 10:54:55 +02:00
Vasily
7509b8beee
Update documentation for building on windows
2019-07-24 10:54:55 +02:00
Vasily
112e611709
Make Windows build script traverse paths for Qt Location
...
The environment variable still has precedence, and will be used before
all other versions if it exists.
2019-07-24 10:54:55 +02:00
Vasily
275d0813b5
Make whitespace updates to windows build files
2019-07-24 10:54:55 +02:00
Vasily
ecfbb6f0ff
Remove StatisticsTabController initStage1 function
...
Function was a noop.
2019-07-20 21:24:03 +02:00
Vasily
b6001235f0
Remove FixFloorTabController initStage1 function
...
The function was a noop.
2019-07-20 21:24:03 +02:00
Vasily
1975192bb1
Remove widget pointer from MoveCenterTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
0c6ed9a68d
Remove widget and parent pointers from UtilitiesTabController
...
The pointers are not needed and are an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
27b148ae12
Remove widget pointer from ReviveTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
66fd6e6470
Remove widget pointer from SettingsTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
7728744cdd
Remove widget pointer from StatisticsTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
7a6c8b662d
Remove widget and parent pointer from AudioTabController
...
The pointers are not needed and are an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
5f35a11381
Remove widget pointer from FixFloorTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
6a3e22bdd6
Remove widget pointer from ChaperoneTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
5605b9b104
Remove widget pointer from SteamVRTabController
...
The pointer is not needed and is an anti pattern.
2019-07-20 21:24:03 +02:00
Vasily
e712f4aa1f
Reduce update rate of chaperone velocity modifiers
...
Having the application call Sync() every frame led to slowdowns on some
4 core CPUs and instant crashes on some older CPUs.
This makes the chaperone velocity modifier only update on every 101st
frame. This might not be the ideal framerate, but having it update every
frame makes the app crash on start for some users.
On Manjaro with a i7-6700K (4 cores) this led to instant crashes of
SteamVR+Steam+OVRAS, with a SEGFAULT in SteamVR.
Issue here:
https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/issues/252
2019-07-19 12:22:56 +02:00
username223
9b3fef2310
Add bug report/feature request issue templates
...
Having to wait for OPs to respond with details that should have been in the original issue is getting a little annoying.
This will reduce the amount of freeform writing required by people to produce a usable feature request/bug report.
2019-07-18 18:39:19 +02:00
Vasily
872a4a9ed8
Update version string to 3.2.0-dev
2019-07-04 20:26:24 +02:00
Vasily
e70f66b2cb
Make python version script remove newlines from version string
...
Previously newlines would remain and foul up the other build tools.
2019-07-04 18:25:44 +02:00
Vasily
696ddfdea4
Fix bug in python version script that lead to error
2019-07-04 17:44:07 +02:00
Vasily
c9a85f45f6
Update version string to 3.2.0-release
2019-07-04 17:44:07 +02:00
Vasily
64ee6639ed
Update version string to 3.2.0-RC2
2019-07-04 17:44:07 +02:00
Vasily
885c0b2004
Clean up CircleCI config
2019-07-04 16:44:31 +02:00
Vasily
dbecf100b8
Change CircleCI to use g++-9 instead of g++-7
2019-07-04 16:44:31 +02:00
Vasily
614278d7ec
Add compiler check for g++-9 to qmake
2019-07-04 16:44:31 +02:00
Vasily
b68ce1a583
Remove clang --version from CircleCI
...
It is not guaranteed that the `clang` binary is used (`clang-8` instead,
for example) and versions are output by QMAKE anyway.
2019-07-04 16:44:31 +02:00
Vasily
8df1eb6f19
Add versioning to Linux artifacts and change CI image
...
The circleci/buildpack-deps:xenial contains python, which is needed for
the version changing script.
2019-07-04 16:44:31 +02:00
Vasily
329b4e7331
Add SVG support to AppImage, move files instead of copying
2019-07-04 16:44:31 +02:00
Vasily
0121e75947
Manually add QtQuick.Dialogs to Linux AppImage
...
https://github.com/probonopd/linuxdeployqt/issues/25
As detailed there QtQuick/Dialogs and QtQuick/LocalStorage are not
automatically packaged.
2019-07-04 16:44:31 +02:00
Vasily
ad05b29392
Add qml path to AppImage
...
This should solve problem
https://github.com/probonopd/linuxdeployqt/issues/25
with error message
QML Error:
file:///tmp/.mount_OpenVRtQNnT6/usr/bin/res/qml/common/mainwidget.qml:1:1:
module "QtQuick" is not installed
2019-07-04 16:44:31 +02:00
Vasily
c08ab71e63
Remove AppImage new glibc switch
2019-07-04 16:44:31 +02:00
Vasily
6a7e5804bf
Add CircleCI AppImage building
...
This builds on GCC for no reason in particular.
2019-07-04 16:44:31 +02:00
Vasily
201cb40359
Add variable for clang-tidy name when building on Linux
...
Travis has the correct clang-tidy version of 7, while CircleCI needs
clang-tidy-7.
2019-06-24 19:21:14 +02:00
Vasily
ec5a575d93
Add g++-8 specific version support.
2019-06-24 19:21:14 +02:00
Vasily
e8af73db28
Make CircleCI have feature parity with TravisCI and update docs
...
Unnecessary line from Bionic 18.04 was removed.
A proper version guard was included for clang. Xenial currently ships
3.8.
2019-06-24 19:21:14 +02:00
Vasily
89eb37ed15
Add clang-tidy to circleci
2019-06-24 19:21:14 +02:00
Vasily
b65657b371
Add clang passing build
...
CircleCI Xenial does not come with an up to date version of Clang. It is
therefore required to get the newest version (8). The .pri file has
quickly been edited to be similar to the g++ version check.
2019-06-24 19:21:14 +02:00
Vasily
aade86ed47
Add circleci g++ passing build
...
CircleCI does not compile with --jobs.
2019-06-24 19:21:14 +02:00
Vasily
73e1878e59
Remove X11 logging calls
2019-06-15 10:00:46 +02:00
Vasily
97009aa39a
Convert KeySym to KeyCode
...
Previously KeySyms were sent when KeyCodes should have been sent.
2019-06-15 10:00:46 +02:00
Vasily
e2f41fce37
Remove unused param for X11 input sender
2019-06-15 10:00:46 +02:00
Vasily
589b759c77
Linux Keyboard Input: Make KeySym conv explicit
2019-06-15 10:00:46 +02:00
Vasily
9703917a19
Fix bug in Linux keyboard input sender
...
Held modifiers weren't being released again.
2019-06-15 10:00:46 +02:00
Vasily
061509eff6
Add casts to logging calls
2019-06-15 10:00:46 +02:00
Vasily
f68413d651
Add logging calls to X11 key sending
2019-06-15 10:00:46 +02:00
Vasily
674a28eb96
Add general readme fixes
2019-06-14 20:58:01 +02:00
Vasily
9f0790e1d2
Update SteamVR input guide
2019-06-14 20:58:01 +02:00
Vasily
adf2f33c3c
Fix types and weirdly capitalized words in SteamVR Input Guide
2019-06-14 20:58:01 +02:00
Vasily
182b6ec6b4
Update Readme feature list
...
Some of the bullets do not make sense without context.
2019-06-14 20:58:01 +02:00
Vasily
d7deb4ae8c
Move TOC in readme above initial header
2019-06-14 20:58:01 +02:00
Vasily
a0c3b1f92a
Remove colons from TOC in readme
2019-06-14 20:58:01 +02:00
Vasily
b60f4eb254
Remove colons from some headers
2019-06-14 20:58:01 +02:00
Vasily
f3895f223e
Convert readme Table Of Contents to not use HTML tags
...
GitHub works fine with just headers and the tags are a pain to maintain.
TOC created with https://ecotrust-canada.github.io/markdown-toc/ .
2019-06-14 20:58:01 +02:00
Vasily
4118885821
Update documentation on keyboard input
2019-06-14 20:58:01 +02:00
Vasily
8e34e9edca
Update documentation for DBUS on Linux
2019-06-05 19:57:44 +02:00
Vasily
f958026453
Add DBUS support for media keys
2019-06-05 19:57:44 +02:00
Vasily
a228cf0d5b
Change .txt to .md
2019-05-25 18:49:42 +02:00
Vasily
0b16eeffa7
Add further explanation to docs on keyboard input
2019-05-25 18:49:42 +02:00
Vasily
f70e66277b
Add dereference to logging call
2019-05-25 18:49:42 +02:00
Vasily
3f8f757ead
Add error logging for keyboard input
2019-05-25 18:49:42 +02:00
Vasily
6009fcbfd0
Change keyboard_manager spec extension to .md
...
It's actually markdown, not text.
2019-05-25 18:49:42 +02:00
Vasily
c88b1db92b
Create documentation for keyboard input
2019-05-25 18:49:42 +02:00
Vasily
66d2a77cfb
Make VR->keyboard bindings appear in .ini on startup
2019-05-25 18:49:42 +02:00
Vasily
1429e833fe
Update readme for bindings->keyboard keys
2019-05-25 18:49:42 +02:00
Vasily
7d37ec9c0d
Add bindings to keyboard shortcuts
...
The default binding for keyboardOne is the default combination
for muting on Discord. This was explicitly chosen as a use case, and it
might make people not have to tangle with creating custom
keybindings in the .ini file.
2019-05-25 18:49:42 +02:00
Vasily
ef124ee225
Add dummy media_keys file
...
This allows Linux (and MacOS) to compile correctly again. The previous
behavior was an intended middle step.
2019-05-25 18:49:42 +02:00
Vasily
5f30095ec8
Readd media keys for Windows
...
This intentionally does not compile on Linux.
2019-05-25 18:49:42 +02:00
Vasily
9fe1f3dc50
Separate media keys from keyboard shortcuts
...
The media keys were only in the keyboard shortcuts file because their
implementation was the same. With Linux support incoming their
implementations are not necessarily the same.
2019-05-25 18:49:42 +02:00
Vasily
55a3830787
Fix keyboard input implementation error and replace old system
2019-05-25 18:49:42 +02:00
Vasily
d48f74b314
Fix clang-tidy errors
2019-05-25 18:49:42 +02:00
Vasily
1cd259bf9b
Add inline to sendStringAsInput
...
Definition in function header led to linker errors.
2019-05-25 18:49:42 +02:00
Vasily
2d8f5a1b40
Add Enter button to spec and keyboard_input
...
It was mistakenly left out.
2019-05-25 18:49:42 +02:00
Vasily
eb25656eeb
Fix typo in keyboard_input function name
2019-05-25 18:49:42 +02:00
Vasily
6a3a58361d
Add Linux keyboard_input support
2019-05-25 18:49:42 +02:00
Vasily
9fa42842cd
Add top level stringToInput sender in header
...
This is the same for all platforms, so thers' no reason to duplicate it
in platform specific sections.
2019-05-25 18:49:42 +02:00
Vasily
0c7c339e3e
Add sending inputs for keyboard_input on Windows
2019-05-25 18:49:42 +02:00
Vasily
6290221853
Remove AltGr support from keyboard input
...
Was removed in spec for being Alt + Ctrl.
2019-05-25 18:49:42 +02:00
Vasily
3173c4999c
Remove AltGr button from keyboard input spec
...
AltGr is just implemented as Alt + Ctrl. This means it's unnecessary and
is only going to complicate the spec.
2019-05-25 18:49:42 +02:00
Vasily
b4cf5d3cb7
Add removing duplicate tokens to input_parser
2019-05-25 18:49:42 +02:00
Vasily
bc060bec96
Add removing extra new-sequence tokens
2019-05-25 18:49:42 +02:00
Vasily
2c0f49d8d6
Add noexcept specifiers to keyboard_input functions
2019-05-25 18:49:42 +02:00
Vasily
f72e1b2541
Add capital literal parsing and tests
2019-05-25 18:49:42 +02:00
Vasily
d5cb19cea1
Add tests for capital literals
2019-05-25 18:49:42 +02:00
Vasily
ef0e679344
Add support for space token to keyboard_input
2019-05-25 18:49:42 +02:00
Vasily
e40058e58a
Fix keyboard_input SEGFAULT
2019-05-25 18:49:42 +02:00
Vasily
d6c7b52a47
Add initial keyboard_input parser and tests
...
The current implementation SEGFAULTs when F characters are followed by
end of string.
2019-05-25 18:49:42 +02:00
Vasily
49b16ebc8f
Remove F10, F11 and F12 function keys from keyboard spec
...
There is no way to tell if they are meant to be one or two keys and in
this case simplicity of use wins out.
2019-05-25 18:49:42 +02:00
Vasily
d2127e53aa
Add specification for keyboard input parser
2019-05-25 18:49:42 +02:00