Compare commits
98 Commits
__refs_pul
...
__refs_pul
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
2bda317d7d | ||
|
|
2d3a404490 | ||
|
|
f1e66ee0c7 | ||
|
|
e88e93e055 | ||
|
|
91d8666bb1 | ||
|
|
ff04d62d1f | ||
|
|
2ff45cd0da | ||
|
|
b6b56f48b7 | ||
|
|
04a9d14f35 | ||
|
|
98db796fde | ||
|
|
adebc96a9c | ||
|
|
564a65a82e | ||
|
|
501ff2eda5 | ||
|
|
999ec5739d | ||
|
|
68b2db21b1 | ||
|
|
2337397a15 | ||
|
|
7c56ecca3f | ||
|
|
211544fbc8 | ||
|
|
4677fd3f64 | ||
|
|
4eeac731ff | ||
|
|
816d03f7d9 | ||
|
|
909f7eb3d2 | ||
|
|
7c2e9a6596 | ||
|
|
fe6934593f | ||
|
|
52c8adc7ed | ||
|
|
7ec7ff0f30 | ||
|
|
a133eadf06 | ||
|
|
89dd0fa932 | ||
|
|
a9dcfe2a42 | ||
|
|
2ad8d614b5 | ||
|
|
b206ea5cfe | ||
|
|
70590f79f8 | ||
|
|
fa12384350 | ||
|
|
78aac6b403 | ||
|
|
0cb413c3d3 | ||
|
|
962c82540c | ||
|
|
06fd7f2012 | ||
|
|
0cbb555e9a | ||
|
|
2e8c21ad2d | ||
|
|
f44183db9e | ||
|
|
5fa9bc192c | ||
|
|
f9a559d2b7 | ||
|
|
af87365672 | ||
|
|
03a23c037a | ||
|
|
0ac777460d | ||
|
|
71e59bdcd8 | ||
|
|
0a1283f94f | ||
|
|
2600ac65c8 | ||
|
|
c8e8c614a0 | ||
|
|
e7c4c8b993 | ||
|
|
f049453dd6 | ||
|
|
cac37a6f6e | ||
|
|
263dfa95e4 | ||
|
|
bc9711cb1e | ||
|
|
b4d88a7bb4 | ||
|
|
ae833aa9c0 | ||
|
|
4463ded603 | ||
|
|
159dec01ee | ||
|
|
6319bafafa | ||
|
|
c000a5ff09 | ||
|
|
fee263c59c | ||
|
|
5a64a77df3 | ||
|
|
6810929f6a | ||
|
|
9404633bfd | ||
|
|
12f86f89fc | ||
|
|
9858ea79fb | ||
|
|
c10e720ba9 | ||
|
|
5016de3626 | ||
|
|
d5fb9fd12c | ||
|
|
c79b3af610 | ||
|
|
c0a383d960 | ||
|
|
b6106604c4 | ||
|
|
12b6162852 | ||
|
|
8f192b494a | ||
|
|
372897aac4 | ||
|
|
fa47ac1c9f | ||
|
|
c52d7cc694 | ||
|
|
a2f23746c2 | ||
|
|
215b13f2a2 | ||
|
|
35ed9425d7 | ||
|
|
74cc8721c7 | ||
|
|
8ef1db78b0 | ||
|
|
18c8f10ff2 | ||
|
|
96d881f087 | ||
|
|
0e950baf41 | ||
|
|
8113f55f4b | ||
|
|
f296a9ce9a | ||
|
|
ddbefc71cb | ||
|
|
0d5a3abeae | ||
|
|
504abbd6e0 | ||
|
|
accccc0cbf | ||
|
|
01ba6cf610 | ||
|
|
4841dc0b74 | ||
|
|
185125e4e4 | ||
|
|
99ea31faa8 | ||
|
|
9ade941de1 | ||
|
|
5eb5c96750 | ||
|
|
f740d8b9be |
21
.ci/scripts/android/eabuild.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash -ex
|
||||
|
||||
# SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
export NDK_CCACHE="$(which ccache)"
|
||||
ccache -s
|
||||
|
||||
export ANDROID_KEYSTORE_FILE="${GITHUB_WORKSPACE}/ks.jks"
|
||||
base64 --decode <<< "${EA_PLAY_ANDROID_KEYSTORE_B64}" > "${ANDROID_KEYSTORE_FILE}"
|
||||
export ANDROID_KEY_ALIAS="${PLAY_ANDROID_KEY_ALIAS}"
|
||||
export ANDROID_KEYSTORE_PASS="${PLAY_ANDROID_KEYSTORE_PASS}"
|
||||
export SERVICE_ACCOUNT_KEY_PATH="${GITHUB_WORKSPACE}/sa.json"
|
||||
base64 --decode <<< "${EA_SERVICE_ACCOUNT_KEY_B64}" > "${SERVICE_ACCOUNT_KEY_PATH}"
|
||||
./gradlew "publishEaReleaseBundle"
|
||||
|
||||
ccache -s
|
||||
|
||||
if [ ! -z "${ANDROID_KEYSTORE_B64}" ]; then
|
||||
rm "${ANDROID_KEYSTORE_FILE}"
|
||||
fi
|
||||
21
.ci/scripts/android/mainlinebuild.sh
Normal file
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash -ex
|
||||
|
||||
# SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
export NDK_CCACHE="$(which ccache)"
|
||||
ccache -s
|
||||
|
||||
export ANDROID_KEYSTORE_FILE="${GITHUB_WORKSPACE}/ks.jks"
|
||||
base64 --decode <<< "${MAINLINE_PLAY_ANDROID_KEYSTORE_B64}" > "${ANDROID_KEYSTORE_FILE}"
|
||||
export ANDROID_KEY_ALIAS="${PLAY_ANDROID_KEY_ALIAS}"
|
||||
export ANDROID_KEYSTORE_PASS="${PLAY_ANDROID_KEYSTORE_PASS}"
|
||||
export SERVICE_ACCOUNT_KEY_PATH="${GITHUB_WORKSPACE}/sa.json"
|
||||
base64 --decode <<< "${MAINLINE_SERVICE_ACCOUNT_KEY_B64}" > "${SERVICE_ACCOUNT_KEY_PATH}"
|
||||
./gradlew "publishMainlineReleaseBundle"
|
||||
|
||||
ccache -s
|
||||
|
||||
if [ ! -z "${ANDROID_KEYSTORE_B64}" ]; then
|
||||
rm "${ANDROID_KEYSTORE_FILE}"
|
||||
fi
|
||||
66
.github/workflows/android-ea-play-release.yml
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
# SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
name: yuzu-android-ea-play-release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
release-track:
|
||||
description: 'Play store release track (internal/alpha/beta/production)'
|
||||
required: true
|
||||
default: 'alpha'
|
||||
|
||||
jobs:
|
||||
android:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.repository == 'yuzu-emu/yuzu' }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
name: Checkout
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
token: ${{ secrets.ALT_GITHUB_TOKEN }}
|
||||
- run: npm install execa@5
|
||||
- uses: actions/github-script@v5
|
||||
name: 'Merge and publish Android EA changes'
|
||||
env:
|
||||
ALT_GITHUB_TOKEN: ${{ secrets.ALT_GITHUB_TOKEN }}
|
||||
BUILD_EA: true
|
||||
with:
|
||||
script: |
|
||||
const execa = require("execa");
|
||||
const mergebot = require('./.github/workflows/android-merge.js').mergebot;
|
||||
process.chdir('${{ github.workspace }}');
|
||||
mergebot(github, context, execa);
|
||||
- name: Get tag name
|
||||
run: echo "GIT_TAG_NAME=$(cat tag-name.txt)" >> $GITHUB_ENV
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: '17'
|
||||
distribution: 'temurin'
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ccache apksigner glslang-dev glslang-tools
|
||||
- name: Build
|
||||
run: ./.ci/scripts/android/eabuild.sh
|
||||
env:
|
||||
EA_PLAY_ANDROID_KEYSTORE_B64: ${{ secrets.PLAY_ANDROID_KEYSTORE_B64 }}
|
||||
PLAY_ANDROID_KEY_ALIAS: ${{ secrets.PLAY_ANDROID_KEY_ALIAS }}
|
||||
PLAY_ANDROID_KEYSTORE_PASS: ${{ secrets.PLAY_ANDROID_KEYSTORE_PASS }}
|
||||
EA_SERVICE_ACCOUNT_KEY_B64: ${{ secrets.EA_SERVICE_ACCOUNT_KEY_B64 }}
|
||||
STORE_TRACK: ${{ github.event.inputs.release-track }}
|
||||
AUTO_VERSIONED: true
|
||||
BUILD_EA: true
|
||||
- name: Create release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
tag_name: ${{ env.EA_TAG_NAME }}
|
||||
name: ${{ env.EA_TAG_NAME }}
|
||||
draft: false
|
||||
prerelease: false
|
||||
repository: yuzu/yuzu-android
|
||||
token: ${{ secrets.ALT_GITHUB_TOKEN }}
|
||||
59
.github/workflows/android-mainline-play-release.yml
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
# SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
name: yuzu-android-mainline-play-release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
release-tag:
|
||||
description: 'Tag # from yuzu-android that you want to build and publish'
|
||||
required: true
|
||||
default: '200'
|
||||
release-track:
|
||||
description: 'Play store release track (internal/alpha/beta/production)'
|
||||
required: true
|
||||
default: 'alpha'
|
||||
|
||||
jobs:
|
||||
android:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.repository == 'yuzu-emu/yuzu' }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
name: Checkout
|
||||
with:
|
||||
fetch-depth: 0
|
||||
submodules: true
|
||||
token: ${{ secrets.ALT_GITHUB_TOKEN }}
|
||||
- run: npm install execa@5
|
||||
- uses: actions/github-script@v5
|
||||
name: 'Pull mainline tag'
|
||||
env:
|
||||
MAINLINE_TAG: ${{ github.event.inputs.release-tag }}
|
||||
with:
|
||||
script: |
|
||||
const execa = require("execa");
|
||||
const mergebot = require('./.github/workflows/android-merge.js').getMainlineTag;
|
||||
process.chdir('${{ github.workspace }}');
|
||||
mergebot(execa);
|
||||
- name: Set up JDK 17
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
java-version: '17'
|
||||
distribution: 'temurin'
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ccache apksigner glslang-dev glslang-tools
|
||||
- name: Build
|
||||
run: |
|
||||
echo "GIT_TAG_NAME=android-${{ github.event.inputs.releast-tag }}" >> $GITHUB_ENV
|
||||
./.ci/scripts/android/mainlinebuild.sh
|
||||
env:
|
||||
MAINLINE_PLAY_ANDROID_KEYSTORE_B64: ${{ secrets.PLAY_ANDROID_KEYSTORE_B64 }}
|
||||
PLAY_ANDROID_KEY_ALIAS: ${{ secrets.PLAY_ANDROID_KEY_ALIAS }}
|
||||
PLAY_ANDROID_KEYSTORE_PASS: ${{ secrets.PLAY_ANDROID_KEYSTORE_PASS }}
|
||||
SERVICE_ACCOUNT_KEY_B64: ${{ secrets.MAINLINE_SERVICE_ACCOUNT_KEY_B64 }}
|
||||
STORE_TRACK: ${{ github.event.inputs.release-track }}
|
||||
AUTO_VERSIONED: true
|
||||
129
.github/workflows/android-merge.js
vendored
@@ -6,9 +6,12 @@
|
||||
|
||||
const fs = require("fs");
|
||||
// which label to check for changes
|
||||
const CHANGE_LABEL = 'android-merge';
|
||||
const CHANGE_LABEL_MAINLINE = 'android-merge';
|
||||
const CHANGE_LABEL_EA = 'android-ea-merge';
|
||||
// how far back in time should we consider the changes are "recent"? (default: 24 hours)
|
||||
const DETECTION_TIME_FRAME = (parseInt(process.env.DETECTION_TIME_FRAME)) || (24 * 3600 * 1000);
|
||||
const BUILD_EA = process.env.BUILD_EA == 'true';
|
||||
const MAINLINE_TAG = process.env.MAINLINE_TAG;
|
||||
|
||||
async function checkBaseChanges(github) {
|
||||
// query the commit date of the latest commit on this branch
|
||||
@@ -40,20 +43,7 @@ async function checkBaseChanges(github) {
|
||||
|
||||
async function checkAndroidChanges(github) {
|
||||
if (checkBaseChanges(github)) return true;
|
||||
const query = `query($owner:String!, $name:String!, $label:String!) {
|
||||
repository(name:$name, owner:$owner) {
|
||||
pullRequests(labels: [$label], states: OPEN, first: 100) {
|
||||
nodes { number headRepository { pushedAt } }
|
||||
}
|
||||
}
|
||||
}`;
|
||||
const variables = {
|
||||
owner: 'yuzu-emu',
|
||||
name: 'yuzu',
|
||||
label: CHANGE_LABEL,
|
||||
};
|
||||
const result = await github.graphql(query, variables);
|
||||
const pulls = result.repository.pullRequests.nodes;
|
||||
const pulls = getPulls(github, false);
|
||||
for (let i = 0; i < pulls.length; i++) {
|
||||
let pull = pulls[i];
|
||||
if (new Date() - new Date(pull.headRepository.pushedAt) <= DETECTION_TIME_FRAME) {
|
||||
@@ -83,7 +73,13 @@ async function tagAndPush(github, owner, repo, execa, commit=false) {
|
||||
};
|
||||
const tags = await github.graphql(query, variables);
|
||||
const tagList = tags.repository.refs.nodes;
|
||||
const lastTag = tagList[0] ? tagList[0].name : 'dummy-0';
|
||||
let lastTag = 'android-1';
|
||||
for (let i = 0; i < tagList.length; ++i) {
|
||||
if (tagList[i].name.includes('android-')) {
|
||||
lastTag = tagList[i].name;
|
||||
break;
|
||||
}
|
||||
}
|
||||
const tagNumber = /\w+-(\d+)/.exec(lastTag)[1] | 0;
|
||||
const channel = repo.split('-')[1];
|
||||
const newTag = `${channel}-${tagNumber + 1}`;
|
||||
@@ -101,6 +97,48 @@ async function tagAndPush(github, owner, repo, execa, commit=false) {
|
||||
console.info('Successfully pushed new changes.');
|
||||
}
|
||||
|
||||
async function tagAndPushEA(github, owner, repo, execa) {
|
||||
let altToken = process.env.ALT_GITHUB_TOKEN;
|
||||
if (!altToken) {
|
||||
throw `Please set ALT_GITHUB_TOKEN environment variable. This token should have write access to ${owner}/${repo}.`;
|
||||
}
|
||||
const query = `query ($owner:String!, $name:String!) {
|
||||
repository(name:$name, owner:$owner) {
|
||||
refs(refPrefix: "refs/tags/", orderBy: {field: TAG_COMMIT_DATE, direction: DESC}, first: 10) {
|
||||
nodes { name }
|
||||
}
|
||||
}
|
||||
}`;
|
||||
const variables = {
|
||||
owner: owner,
|
||||
name: repo,
|
||||
};
|
||||
const tags = await github.graphql(query, variables);
|
||||
const tagList = tags.repository.refs.nodes;
|
||||
let lastTag = 'ea-1';
|
||||
for (let i = 0; i < tagList.length; ++i) {
|
||||
if (tagList[i].name.includes('ea-')) {
|
||||
lastTag = tagList[i].name;
|
||||
break;
|
||||
}
|
||||
}
|
||||
const tagNumber = /\w+-(\d+)/.exec(lastTag)[1] | 0;
|
||||
const newTag = `ea-${tagNumber + 1}`;
|
||||
console.log(`New tag: ${newTag}`);
|
||||
console.info('Pushing tags to GitHub ...');
|
||||
await execa("git", ["remote", "add", "android", "https://github.com/yuzu-emu/yuzu-android.git"]);
|
||||
await execa("git", ["fetch", "android"]);
|
||||
|
||||
await execa("git", ['tag', newTag]);
|
||||
await execa("git", ['push', 'android', `${newTag}`]);
|
||||
|
||||
fs.writeFile('tag-name.txt', newTag, (err) => {
|
||||
if (err) throw 'Could not write tag name to file!'
|
||||
})
|
||||
|
||||
console.info('Successfully pushed new changes.');
|
||||
}
|
||||
|
||||
async function generateReadme(pulls, context, mergeResults, execa) {
|
||||
let baseUrl = `https://github.com/${context.repo.owner}/${context.repo.repo}/`;
|
||||
let output =
|
||||
@@ -202,10 +240,7 @@ async function resetBranch(execa) {
|
||||
}
|
||||
}
|
||||
|
||||
async function mergebot(github, context, execa) {
|
||||
// Reset our local copy of master to what appears on yuzu-emu/yuzu - master
|
||||
await resetBranch(execa);
|
||||
|
||||
async function getPulls(github) {
|
||||
const query = `query ($owner:String!, $name:String!, $label:String!) {
|
||||
repository(name:$name, owner:$owner) {
|
||||
pullRequests(labels: [$label], states: OPEN, first: 100) {
|
||||
@@ -215,13 +250,49 @@ async function mergebot(github, context, execa) {
|
||||
}
|
||||
}
|
||||
}`;
|
||||
const variables = {
|
||||
const mainlineVariables = {
|
||||
owner: 'yuzu-emu',
|
||||
name: 'yuzu',
|
||||
label: CHANGE_LABEL,
|
||||
label: CHANGE_LABEL_MAINLINE,
|
||||
};
|
||||
const result = await github.graphql(query, variables);
|
||||
const pulls = result.repository.pullRequests.nodes;
|
||||
const mainlineResult = await github.graphql(query, mainlineVariables);
|
||||
const pulls = mainlineResult.repository.pullRequests.nodes;
|
||||
if (BUILD_EA) {
|
||||
const eaVariables = {
|
||||
owner: 'yuzu-emu',
|
||||
name: 'yuzu',
|
||||
label: CHANGE_LABEL_EA,
|
||||
};
|
||||
const eaResult = await github.graphql(query, eaVariables);
|
||||
const eaPulls = eaResult.repository.pullRequests.nodes;
|
||||
return pulls.concat(eaPulls);
|
||||
}
|
||||
return pulls;
|
||||
}
|
||||
|
||||
async function getMainlineTag(execa) {
|
||||
console.log(`::group::Getting mainline tag android-${MAINLINE_TAG}`);
|
||||
let hasFailed = false;
|
||||
try {
|
||||
await execa("git", ["remote", "add", "mainline", "https://github.com/yuzu-emu/yuzu-android.git"]);
|
||||
await execa("git", ["fetch", "mainline", "--tags"]);
|
||||
await execa("git", ["checkout", `tags/android-${MAINLINE_TAG}`]);
|
||||
await execa("git", ["submodule", "update", "--init", "--recursive"]);
|
||||
} catch (err) {
|
||||
console.log('::error title=Failed pull tag');
|
||||
hasFailed = true;
|
||||
}
|
||||
console.log("::endgroup::");
|
||||
if (hasFailed) {
|
||||
throw 'Failed pull mainline tag. Aborting!';
|
||||
}
|
||||
}
|
||||
|
||||
async function mergebot(github, context, execa) {
|
||||
// Reset our local copy of master to what appears on yuzu-emu/yuzu - master
|
||||
await resetBranch(execa);
|
||||
|
||||
const pulls = await getPulls(github);
|
||||
let displayList = [];
|
||||
for (let i = 0; i < pulls.length; i++) {
|
||||
let pull = pulls[i];
|
||||
@@ -231,11 +302,17 @@ async function mergebot(github, context, execa) {
|
||||
console.table(displayList);
|
||||
await fetchPullRequests(pulls, "https://github.com/yuzu-emu/yuzu", execa);
|
||||
const mergeResults = await mergePullRequests(pulls, execa);
|
||||
await generateReadme(pulls, context, mergeResults, execa);
|
||||
await tagAndPush(github, 'yuzu-emu', `yuzu-android`, execa, true);
|
||||
|
||||
if (BUILD_EA) {
|
||||
await tagAndPushEA(github, 'yuzu-emu', `yuzu-android`, execa);
|
||||
} else {
|
||||
await generateReadme(pulls, context, mergeResults, execa);
|
||||
await tagAndPush(github, 'yuzu-emu', `yuzu-android`, execa, true);
|
||||
}
|
||||
}
|
||||
|
||||
module.exports.mergebot = mergebot;
|
||||
module.exports.checkAndroidChanges = checkAndroidChanges;
|
||||
module.exports.tagAndPush = tagAndPush;
|
||||
module.exports.checkBaseChanges = checkBaseChanges;
|
||||
module.exports.getMainlineTag = getMainlineTag;
|
||||
|
||||
4
.github/workflows/android-publish.yml
vendored
@@ -1,4 +1,4 @@
|
||||
# SPDX-FileCopyrightText: 2023 yuzu Emulator Project
|
||||
# SPDX-FileCopyrightText: 2024 yuzu Emulator Project
|
||||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
name: yuzu-android-publish
|
||||
@@ -16,7 +16,7 @@ on:
|
||||
jobs:
|
||||
android:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.event.inputs.android != 'false' && github.repository == 'yuzu-emu/yuzu-android' }}
|
||||
if: ${{ github.event.inputs.android != 'false' && github.repository == 'yuzu-emu/yuzu' }}
|
||||
steps:
|
||||
# this checkout is required to make sure the GitHub Actions scripts are available
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
49
.reuse/dep5
@@ -9,6 +9,8 @@ Files: dist/english_plurals/*
|
||||
dist/qt_themes/*/icons/48x48/sd_card.png
|
||||
dist/qt_themes/*/icons/index.theme
|
||||
dist/qt_themes/default/style.qss
|
||||
dist/qt_themes/*/icons.qrc
|
||||
dist/qt_themes/*/style.qrc
|
||||
Copyright: yuzu Emulator Project
|
||||
License: GPL-2.0-or-later
|
||||
|
||||
@@ -21,7 +23,6 @@ Copyright: yuzu Emulator Project
|
||||
License: GPL-2.0-or-later
|
||||
|
||||
Files: dist/qt_themes/qdarkstyle*/LICENSE.*
|
||||
dist/qt_themes/qdarkstyle*/style.qrc
|
||||
dist/qt_themes/qdarkstyle*/style.qss
|
||||
Copyright: 2013 Colin Duquesnoy
|
||||
2019 Daniel Cosmo Pizetta
|
||||
@@ -32,28 +33,28 @@ Copyright: 2013 Colin Duquesnoy
|
||||
2019 Daniel Cosmo Pizetta
|
||||
License: CC-BY-4.0
|
||||
|
||||
Files: dist/qt_themes/default/icons/256x256/plus_folder.png
|
||||
dist/qt_themes/default/icons/48x48/bad_folder.png
|
||||
dist/qt_themes/default/icons/48x48/chip.png
|
||||
dist/qt_themes/default/icons/48x48/folder.png
|
||||
dist/qt_themes/default/icons/48x48/star.png
|
||||
dist/qt_themes/qdarkstyle/icons/256x256/plus_folder.png
|
||||
dist/qt_themes/qdarkstyle/icons/48x48/bad_folder.png
|
||||
dist/qt_themes/qdarkstyle/icons/48x48/chip.png
|
||||
dist/qt_themes/qdarkstyle/icons/48x48/folder.png
|
||||
dist/qt_themes/qdarkstyle/icons/48x48/star.png
|
||||
Files: dist/qt_themes/monochrome/icons/256x256/plus_folder.png
|
||||
dist/qt_themes/monochrome/icons/48x48/bad_folder.png
|
||||
dist/qt_themes/monochrome/icons/48x48/chip.png
|
||||
dist/qt_themes/monochrome/icons/48x48/folder.png
|
||||
dist/qt_themes/monochrome/icons/48x48/star.png
|
||||
dist/qt_themes/monochrome_dark/icons/48x48/bad_folder.png
|
||||
dist/qt_themes/monochrome_dark/icons/48x48/chip.png
|
||||
dist/qt_themes/monochrome_dark/icons/48x48/folder.png
|
||||
dist/qt_themes/monochrome_dark/icons/48x48/star.png
|
||||
dist/qt_themes/monochrome_dark/icons/256x256/plus_folder.png
|
||||
Copyright: Refactoring UI Inc.
|
||||
License: MIT
|
||||
Comment: https://github.com/tailwindlabs/heroicons
|
||||
|
||||
Files: dist/qt_themes/colorful/icons/16x16/lock.png
|
||||
dist/qt_themes/colorful/icons/256x256/plus_folder.png
|
||||
dist/qt_themes/colorful/icons/48x48/bad_folder.png
|
||||
dist/qt_themes/colorful/icons/48x48/chip.png
|
||||
dist/qt_themes/colorful/icons/48x48/folder.png
|
||||
dist/qt_themes/colorful_dark/icons/16x16/lock.png
|
||||
dist/qt_themes/colorful/icons/16x16/info.png
|
||||
dist/qt_themes/colorful/icons/16x16/sync.png
|
||||
Files: dist/qt_themes/default/icons/16x16/lock.png
|
||||
dist/qt_themes/default/icons/256x256/plus_folder.png
|
||||
dist/qt_themes/default/icons/48x48/bad_folder.png
|
||||
dist/qt_themes/default/icons/48x48/chip.png
|
||||
dist/qt_themes/default/icons/48x48/folder.png
|
||||
dist/qt_themes/default_dark/icons/16x16/lock.png
|
||||
dist/qt_themes/default/icons/16x16/info.png
|
||||
dist/qt_themes/default/icons/16x16/sync.png
|
||||
Copyright: Icons8
|
||||
License: MIT
|
||||
Comment: https://github.com/icons8/flat-color-icons
|
||||
@@ -69,15 +70,15 @@ Files: dist/qt_themes/*/icons/48x48/no_avatar.png
|
||||
Copyright: Ionic (http://ionic.io/)
|
||||
License: MIT
|
||||
|
||||
Files: dist/qt_themes/colorful/icons/48x48/star.png
|
||||
dist/qt_themes/colorful/icons/16x16/checked.png
|
||||
dist/qt_themes/colorful/icons/16x16/failed.png
|
||||
Files: dist/qt_themes/default/icons/48x48/star.png
|
||||
dist/qt_themes/default/icons/16x16/checked.png
|
||||
dist/qt_themes/default/icons/16x16/failed.png
|
||||
Copyright: SVG Repo
|
||||
License: CC0-1.0
|
||||
|
||||
Files: dist/qt_themes/*/icons/16x16/view-refresh.png
|
||||
dist/qt_themes/default/icons/16x16/lock.png
|
||||
dist/qt_themes/qdarkstyle/icons/16x16/lock.png
|
||||
dist/qt_themes/monochrome/icons/16x16/lock.png
|
||||
dist/qt_themes/monochrome_dark/icons/16x16/lock.png
|
||||
Copyright: Google, Inc.
|
||||
License: Apache-2.0
|
||||
|
||||
|
||||
1
dist/languages/.tx/config
vendored
@@ -11,3 +11,4 @@ type = QT
|
||||
file_filter = ../../src/android/app/src/main/res/values-<lang>/strings.xml
|
||||
source_file = ../../src/android/app/src/main/res/values/strings.xml
|
||||
type = ANDROID
|
||||
lang_map = ja_JP:ja, ko_KR:ko, pt_BR:pt-rBR, pt_PT:pt-rPT, ru_RU:ru, vi_VN:vi, zh_CN:zh-rCN, zh_TW:zh-rTW
|
||||
|
||||
BIN
dist/qt_themes/colorful/icons/16x16/connected.png
vendored
|
Before Width: | Height: | Size: 575 B |
|
Before Width: | Height: | Size: 760 B |
BIN
dist/qt_themes/colorful/icons/16x16/disconnected.png
vendored
|
Before Width: | Height: | Size: 648 B |
BIN
dist/qt_themes/colorful/icons/16x16/lock.png
vendored
|
Before Width: | Height: | Size: 330 B |
|
Before Width: | Height: | Size: 4.5 KiB |
BIN
dist/qt_themes/colorful/icons/48x48/bad_folder.png
vendored
|
Before Width: | Height: | Size: 528 B |
BIN
dist/qt_themes/colorful/icons/48x48/chip.png
vendored
|
Before Width: | Height: | Size: 582 B |
BIN
dist/qt_themes/colorful/icons/48x48/folder.png
vendored
|
Before Width: | Height: | Size: 460 B |
BIN
dist/qt_themes/colorful/icons/48x48/list-add.png
vendored
|
Before Width: | Height: | Size: 204 B |
BIN
dist/qt_themes/colorful/icons/48x48/sd_card.png
vendored
|
Before Width: | Height: | Size: 228 B |
BIN
dist/qt_themes/colorful/icons/48x48/star.png
vendored
|
Before Width: | Height: | Size: 1.1 KiB |
30
dist/qt_themes/colorful/style.qrc
vendored
@@ -1,30 +0,0 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<qresource prefix="icons/colorful">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/checked.png">icons/16x16/checked.png</file>
|
||||
<file alias="16x16/connected.png">icons/16x16/connected.png</file>
|
||||
<file alias="16x16/connected_notification.png">icons/16x16/connected_notification.png</file>
|
||||
<file alias="16x16/disconnected.png">icons/16x16/disconnected.png</file>
|
||||
<file alias="16x16/failed.png">icons/16x16/failed.png</file>
|
||||
<file alias="16x16/info.png">icons/16x16/info.png</file>
|
||||
<file alias="16x16/lock.png">icons/16x16/lock.png</file>
|
||||
<file alias="16x16/sync.png">icons/16x16/sync.png</file>
|
||||
<file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
|
||||
<file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/no_avatar.png">icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/sd_card.png">icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="colorful">
|
||||
<file alias="style.qss">../default/style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
@@ -1,8 +0,0 @@
|
||||
[Icon Theme]
|
||||
Name=colorful_dark
|
||||
Comment=Colorful theme (Dark style)
|
||||
Inherits=colorful
|
||||
Directories=16x16
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
57
dist/qt_themes/colorful_dark/style.qrc
vendored
@@ -1,57 +0,0 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<qresource prefix="icons/colorful_dark">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">icons/16x16/lock.png</file>
|
||||
<file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
|
||||
</qresource>
|
||||
|
||||
<qresource prefix="qss_icons">
|
||||
<file alias="rc/up_arrow_disabled.png">../qdarkstyle/rc/up_arrow_disabled.png</file>
|
||||
<file alias="rc/Hmovetoolbar.png">../qdarkstyle/rc/Hmovetoolbar.png</file>
|
||||
<file alias="rc/stylesheet-branch-end.png">../qdarkstyle/rc/stylesheet-branch-end.png</file>
|
||||
<file alias="rc/branch_closed-on.png">../qdarkstyle/rc/branch_closed-on.png</file>
|
||||
<file alias="rc/stylesheet-vline.png">../qdarkstyle/rc/stylesheet-vline.png</file>
|
||||
<file alias="rc/branch_closed.png">../qdarkstyle/rc/branch_closed.png</file>
|
||||
<file alias="rc/branch_open-on.png">../qdarkstyle/rc/branch_open-on.png</file>
|
||||
<file alias="rc/transparent.png">../qdarkstyle/rc/transparent.png</file>
|
||||
<file alias="rc/right_arrow_disabled.png">../qdarkstyle/rc/right_arrow_disabled.png</file>
|
||||
<file alias="rc/sizegrip.png">../qdarkstyle/rc/sizegrip.png</file>
|
||||
<file alias="rc/close.png">../qdarkstyle/rc/close.png</file>
|
||||
<file alias="rc/close-hover.png">../qdarkstyle/rc/close-hover.png</file>
|
||||
<file alias="rc/close-pressed.png">../qdarkstyle/rc/close-pressed.png</file>
|
||||
<file alias="rc/down_arrow.png">../qdarkstyle/rc/down_arrow.png</file>
|
||||
<file alias="rc/Vmovetoolbar.png">../qdarkstyle/rc/Vmovetoolbar.png</file>
|
||||
<file alias="rc/left_arrow.png">../qdarkstyle/rc/left_arrow.png</file>
|
||||
<file alias="rc/stylesheet-branch-more.png">../qdarkstyle/rc/stylesheet-branch-more.png</file>
|
||||
<file alias="rc/up_arrow.png">../qdarkstyle/rc/up_arrow.png</file>
|
||||
<file alias="rc/right_arrow.png">../qdarkstyle/rc/right_arrow.png</file>
|
||||
<file alias="rc/left_arrow_disabled.png">../qdarkstyle/rc/left_arrow_disabled.png</file>
|
||||
<file alias="rc/Hsepartoolbar.png">../qdarkstyle/rc/Hsepartoolbar.png</file>
|
||||
<file alias="rc/branch_open.png">../qdarkstyle/rc/branch_open.png</file>
|
||||
<file alias="rc/Vsepartoolbar.png">../qdarkstyle/rc/Vsepartoolbar.png</file>
|
||||
<file alias="rc/down_arrow_disabled.png">../qdarkstyle/rc/down_arrow_disabled.png</file>
|
||||
<file alias="rc/undock.png">../qdarkstyle/rc/undock.png</file>
|
||||
<file alias="rc/checkbox_checked_disabled.png">../qdarkstyle/rc/checkbox_checked_disabled.png</file>
|
||||
<file alias="rc/checkbox_checked_focus.png">../qdarkstyle/rc/checkbox_checked_focus.png</file>
|
||||
<file alias="rc/checkbox_checked.png">../qdarkstyle/rc/checkbox_checked.png</file>
|
||||
<file alias="rc/checkbox_indeterminate.png">../qdarkstyle/rc/checkbox_indeterminate.png</file>
|
||||
<file alias="rc/checkbox_indeterminate_focus.png">../qdarkstyle/rc/checkbox_indeterminate_focus.png</file>
|
||||
<file alias="rc/checkbox_unchecked_disabled.png">../qdarkstyle/rc/checkbox_unchecked_disabled.png</file>
|
||||
<file alias="rc/checkbox_unchecked_focus.png">../qdarkstyle/rc/checkbox_unchecked_focus.png</file>
|
||||
<file alias="rc/checkbox_unchecked.png">../qdarkstyle/rc/checkbox_unchecked.png</file>
|
||||
<file alias="rc/radio_checked_disabled.png">../qdarkstyle/rc/radio_checked_disabled.png</file>
|
||||
<file alias="rc/radio_checked_focus.png">../qdarkstyle/rc/radio_checked_focus.png</file>
|
||||
<file alias="rc/radio_checked.png">../qdarkstyle/rc/radio_checked.png</file>
|
||||
<file alias="rc/radio_unchecked_disabled.png">../qdarkstyle/rc/radio_unchecked_disabled.png</file>
|
||||
<file alias="rc/radio_unchecked_focus.png">../qdarkstyle/rc/radio_unchecked_focus.png</file>
|
||||
<file alias="rc/radio_unchecked.png">../qdarkstyle/rc/radio_unchecked.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="colorful_dark">
|
||||
<file alias="style.qss">../qdarkstyle/style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
@@ -1,8 +0,0 @@
|
||||
[Icon Theme]
|
||||
Name=colorful_midnight_blue
|
||||
Comment=Colorful theme (Midnight Blue style)
|
||||
Inherits=colorful
|
||||
Directories=16x16
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
63
dist/qt_themes/colorful_midnight_blue/style.qrc
vendored
@@ -1,63 +0,0 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<qresource prefix="icons/colorful_midnight_blue">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../colorful_dark/icons/16x16/lock.png</file>
|
||||
<file alias="16x16/view-refresh.png">../qdarkstyle/icons/16x16/view-refresh.png</file>
|
||||
<file alias="48x48/bad_folder.png">../colorful/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../colorful/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../colorful/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">../colorful/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">../colorful/icons/48x48/sd_card.png</file>
|
||||
<file alias="256x256/plus_folder.png">../colorful/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
|
||||
<qresource prefix="qss_icons">
|
||||
<file alias="rc/up_arrow_disabled.png">../qdarkstyle_midnight_blue/rc/up_arrow_disabled.png</file>
|
||||
<file alias="rc/Hmovetoolbar.png">../qdarkstyle_midnight_blue/rc/Hmovetoolbar.png</file>
|
||||
<file alias="rc/stylesheet-branch-end.png">../qdarkstyle_midnight_blue/rc/stylesheet-branch-end.png</file>
|
||||
<file alias="rc/branch_closed-on.png">../qdarkstyle_midnight_blue/rc/branch_closed-on.png</file>
|
||||
<file alias="rc/stylesheet-vline.png">../qdarkstyle_midnight_blue/rc/stylesheet-vline.png</file>
|
||||
<file alias="rc/branch_closed.png">../qdarkstyle_midnight_blue/rc/branch_closed.png</file>
|
||||
<file alias="rc/branch_open-on.png">../qdarkstyle_midnight_blue/rc/branch_open-on.png</file>
|
||||
<file alias="rc/transparent.png">../qdarkstyle_midnight_blue/rc/transparent.png</file>
|
||||
<file alias="rc/right_arrow_disabled.png">../qdarkstyle_midnight_blue/rc/right_arrow_disabled.png</file>
|
||||
<file alias="rc/sizegrip.png">../qdarkstyle_midnight_blue/rc/sizegrip.png</file>
|
||||
<file alias="rc/close.png">../qdarkstyle_midnight_blue/rc/close.png</file>
|
||||
<file alias="rc/close-hover.png">../qdarkstyle_midnight_blue/rc/close-hover.png</file>
|
||||
<file alias="rc/close-pressed.png">../qdarkstyle_midnight_blue/rc/close-pressed.png</file>
|
||||
<file alias="rc/down_arrow.png">../qdarkstyle_midnight_blue/rc/down_arrow.png</file>
|
||||
<file alias="rc/Vmovetoolbar.png">../qdarkstyle_midnight_blue/rc/Vmovetoolbar.png</file>
|
||||
<file alias="rc/left_arrow.png">../qdarkstyle_midnight_blue/rc/left_arrow.png</file>
|
||||
<file alias="rc/stylesheet-branch-more.png">../qdarkstyle_midnight_blue/rc/stylesheet-branch-more.png</file>
|
||||
<file alias="rc/up_arrow.png">../qdarkstyle_midnight_blue/rc/up_arrow.png</file>
|
||||
<file alias="rc/right_arrow.png">../qdarkstyle_midnight_blue/rc/right_arrow.png</file>
|
||||
<file alias="rc/left_arrow_disabled.png">../qdarkstyle_midnight_blue/rc/left_arrow_disabled.png</file>
|
||||
<file alias="rc/Hsepartoolbar.png">../qdarkstyle_midnight_blue/rc/Hsepartoolbar.png</file>
|
||||
<file alias="rc/branch_open.png">../qdarkstyle_midnight_blue/rc/branch_open.png</file>
|
||||
<file alias="rc/Vsepartoolbar.png">../qdarkstyle_midnight_blue/rc/Vsepartoolbar.png</file>
|
||||
<file alias="rc/down_arrow_disabled.png">../qdarkstyle_midnight_blue/rc/down_arrow_disabled.png</file>
|
||||
<file alias="rc/undock.png">../qdarkstyle_midnight_blue/rc/undock.png</file>
|
||||
<file alias="rc/checkbox_checked_disabled.png">../qdarkstyle_midnight_blue/rc/checkbox_checked_disabled.png</file>
|
||||
<file alias="rc/checkbox_checked_focus.png">../qdarkstyle_midnight_blue/rc/checkbox_checked_focus.png</file>
|
||||
<file alias="rc/checkbox_checked.png">../qdarkstyle_midnight_blue/rc/checkbox_checked.png</file>
|
||||
<file alias="rc/checkbox_indeterminate.png">../qdarkstyle_midnight_blue/rc/checkbox_indeterminate.png</file>
|
||||
<file alias="rc/checkbox_indeterminate_focus.png">../qdarkstyle_midnight_blue/rc/checkbox_indeterminate_focus.png</file>
|
||||
<file alias="rc/checkbox_unchecked_disabled.png">../qdarkstyle_midnight_blue/rc/checkbox_unchecked_disabled.png</file>
|
||||
<file alias="rc/checkbox_unchecked_focus.png">../qdarkstyle_midnight_blue/rc/checkbox_unchecked_focus.png</file>
|
||||
<file alias="rc/checkbox_unchecked.png">../qdarkstyle_midnight_blue/rc/checkbox_unchecked.png</file>
|
||||
<file alias="rc/radio_checked_disabled.png">../qdarkstyle_midnight_blue/rc/radio_checked_disabled.png</file>
|
||||
<file alias="rc/radio_checked_focus.png">../qdarkstyle_midnight_blue/rc/radio_checked_focus.png</file>
|
||||
<file alias="rc/radio_checked.png">../qdarkstyle_midnight_blue/rc/radio_checked.png</file>
|
||||
<file alias="rc/radio_unchecked_disabled.png">../qdarkstyle_midnight_blue/rc/radio_unchecked_disabled.png</file>
|
||||
<file alias="rc/radio_unchecked_focus.png">../qdarkstyle_midnight_blue/rc/radio_unchecked_focus.png</file>
|
||||
<file alias="rc/radio_unchecked.png">../qdarkstyle_midnight_blue/rc/radio_unchecked.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="colorful_midnight_blue">
|
||||
<file alias="style.qss">../qdarkstyle_midnight_blue/style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
22
dist/qt_themes/default/default.qrc
vendored
@@ -1,26 +1,40 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||
SPDX-FileCopyrightText: 2019 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<!-- Default style -->
|
||||
<qresource prefix="default">
|
||||
<file>style.qss</file>
|
||||
</qresource>
|
||||
|
||||
<!-- Default icons -->
|
||||
<qresource prefix="icons/default">
|
||||
<!-- "colorful" is now the default theme, add new icons there -->
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/connected.png">icons/16x16/connected.png</file>
|
||||
<file alias="16x16/connected_notification.png">icons/16x16/connected_notification.png</file>
|
||||
<file alias="16x16/disconnected.png">icons/16x16/disconnected.png</file>
|
||||
<file alias="16x16/failed.png">icons/16x16/failed.png</file>
|
||||
<file alias="16x16/info.png">icons/16x16/info.png</file>
|
||||
<file alias="16x16/lock.png">icons/16x16/lock.png</file>
|
||||
<file alias="16x16/sync.png">icons/16x16/sync.png</file>
|
||||
<file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
|
||||
<file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/no_avatar.png">icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/sd_card.png">icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">icons/256x256/plus_folder.png</file>
|
||||
<file alias="256x256/yuzu.png">icons/256x256/yuzu.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="default">
|
||||
<file>style.qss</file>
|
||||
|
||||
<!-- Dark variant icons -->
|
||||
<qresource prefix="icons/default_dark">
|
||||
<file alias="index.theme">../default_dark/icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../default_dark/icons/16x16/lock.png</file>
|
||||
<file alias="16x16/view-refresh.png">../default_dark/icons/16x16/view-refresh.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
||||
|
Before Width: | Height: | Size: 414 B After Width: | Height: | Size: 414 B |
|
Before Width: | Height: | Size: 431 B After Width: | Height: | Size: 431 B |
|
Before Width: | Height: | Size: 428 B After Width: | Height: | Size: 428 B |
BIN
dist/qt_themes/default/icons/16x16/lock.png
vendored
|
Before Width: | Height: | Size: 318 B After Width: | Height: | Size: 330 B |
|
Before Width: | Height: | Size: 548 B After Width: | Height: | Size: 548 B |
|
Before Width: | Height: | Size: 349 B After Width: | Height: | Size: 349 B |
BIN
dist/qt_themes/default/icons/256x256/plus_folder.png
vendored
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 4.5 KiB |
BIN
dist/qt_themes/default/icons/48x48/bad_folder.png
vendored
|
Before Width: | Height: | Size: 1007 B After Width: | Height: | Size: 528 B |
BIN
dist/qt_themes/default/icons/48x48/chip.png
vendored
|
Before Width: | Height: | Size: 511 B After Width: | Height: | Size: 582 B |
BIN
dist/qt_themes/default/icons/48x48/folder.png
vendored
|
Before Width: | Height: | Size: 535 B After Width: | Height: | Size: 460 B |
BIN
dist/qt_themes/default/icons/48x48/list-add.png
vendored
|
Before Width: | Height: | Size: 204 B After Width: | Height: | Size: 204 B |
|
Before Width: | Height: | Size: 678 B After Width: | Height: | Size: 678 B |
BIN
dist/qt_themes/default/icons/48x48/sd_card.png
vendored
|
Before Width: | Height: | Size: 198 B After Width: | Height: | Size: 228 B |
BIN
dist/qt_themes/default/icons/48x48/star.png
vendored
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.1 KiB |
5
dist/qt_themes/default/icons/index.theme
vendored
@@ -1,7 +1,6 @@
|
||||
[Icon Theme]
|
||||
Name=default
|
||||
Comment=default theme
|
||||
Inherits=colorful
|
||||
Comment=Colorful theme
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
[16x16]
|
||||
@@ -9,6 +8,6 @@ Size=16
|
||||
|
||||
[48x48]
|
||||
Size=48
|
||||
|
||||
|
||||
[256x256]
|
||||
Size=256
|
||||
|
||||
36
dist/qt_themes/default/style.qss
vendored
@@ -1,3 +1,17 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
|
||||
QWidget:item:hover {
|
||||
background-color: #18465d;
|
||||
color: #eff0f1;
|
||||
}
|
||||
|
||||
QWidget:item:selected {
|
||||
background-color: #18465d;
|
||||
}
|
||||
|
||||
QAbstractSpinBox {
|
||||
min-height: 19px;
|
||||
}
|
||||
@@ -11,7 +25,7 @@ QPushButton#TogglableStatusBarButton {
|
||||
}
|
||||
|
||||
QPushButton#TogglableStatusBarButton:checked {
|
||||
color: #000000;
|
||||
color: palette(text);
|
||||
}
|
||||
|
||||
QPushButton#TogglableStatusBarButton:hover {
|
||||
@@ -38,6 +52,10 @@ QPushButton#RendererStatusBarButton:!checked {
|
||||
color: #0066ff;
|
||||
}
|
||||
|
||||
QPushButton#RendererStatusBarButton:!checked[dark=true] {
|
||||
color: #00ccdd;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton {
|
||||
color: #656565;
|
||||
border: 1px solid transparent;
|
||||
@@ -54,13 +72,21 @@ QPushButton#GPUStatusBarButton:checked {
|
||||
color: #b06020;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton:checked[dark=true] {
|
||||
color: #ff8040;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton:!checked {
|
||||
color: #109010;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton:!checked[dark=true] {
|
||||
color: #40dd40;
|
||||
}
|
||||
|
||||
QPushButton#DockingStatusBarButton {
|
||||
min-width: 0px;
|
||||
color: #000000;
|
||||
color: palette(text);
|
||||
border: 1px solid transparent;
|
||||
background-color: transparent;
|
||||
padding: 0px 3px 0px 3px;
|
||||
@@ -120,10 +146,6 @@ QWidget#connectedControllers {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QWidget#closeButtons {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QWidget#playersSupported,
|
||||
QWidget#controllersSupported,
|
||||
QWidget#controllerSupported1,
|
||||
@@ -372,7 +394,7 @@ QStackedWidget#stackedDialog QTextBrowser QScrollBar::vertical {
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::horizoncal {
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::horizontal {
|
||||
background: #cdcdcd;
|
||||
height: 15px;
|
||||
margin: 3px 15px 3px 15px;
|
||||
|
||||
|
Before Width: | Height: | Size: 401 B After Width: | Height: | Size: 401 B |
|
Before Width: | Height: | Size: 362 B After Width: | Height: | Size: 362 B |
@@ -1,7 +1,7 @@
|
||||
[Icon Theme]
|
||||
Name=default_dark
|
||||
Comment=Colorful theme (Dark style)
|
||||
Inherits=colorful
|
||||
Inherits=default
|
||||
Directories=16x16
|
||||
|
||||
[16x16]
|
||||
|
||||
25
dist/qt_themes/default_dark/style.qrc
vendored
@@ -1,25 +0,0 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2022 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
<RCC>
|
||||
<qresource prefix="icons/default_dark">
|
||||
<file alias="16x16/connected.png">../colorful/icons/16x16/connected.png</file>
|
||||
<file alias="16x16/connected_notification.png">../colorful/icons/16x16/connected_notification.png</file>
|
||||
<file alias="16x16/disconnected.png">../colorful/icons/16x16/disconnected.png</file>
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../colorful_dark/icons/16x16/lock.png</file>
|
||||
<file alias="16x16/view-refresh.png">../colorful_dark/icons/16x16/view-refresh.png</file>
|
||||
<file alias="48x48/bad_folder.png">../colorful/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../colorful/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../colorful/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/no_avatar.png">../qdarkstyle/icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/list-add.png">../colorful/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">../colorful/icons/48x48/sd_card.png</file>
|
||||
<file alias="256x256/plus_folder.png">../colorful/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
|
||||
<qresource prefix="default_dark">
|
||||
<file>style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
687
dist/qt_themes/default_dark/style.qss
vendored
@@ -1,687 +0,0 @@
|
||||
/*
|
||||
* SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||
* SPDX-License-Identifier: GPL-2.0-or-later
|
||||
*/
|
||||
QAbstractSpinBox {
|
||||
min-height: 19px;
|
||||
}
|
||||
|
||||
QPushButton#TogglableStatusBarButton {
|
||||
color: #959595;
|
||||
border: 1px solid transparent;
|
||||
background-color: transparent;
|
||||
padding: 0px 3px 0px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QPushButton#TogglableStatusBarButton:checked {
|
||||
color: palette(text);
|
||||
}
|
||||
|
||||
QPushButton#TogglableStatusBarButton:hover {
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QPushButton#RendererStatusBarButton {
|
||||
color: #656565;
|
||||
border: 1px solid transparent;
|
||||
background-color: transparent;
|
||||
padding: 0px 3px 0px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QPushButton#RendererStatusBarButton:hover {
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QPushButton#RendererStatusBarButton:checked {
|
||||
color: #e85c00;
|
||||
}
|
||||
|
||||
QPushButton#RendererStatusBarButton:!checked {
|
||||
color: #00ccdd;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton {
|
||||
color: #656565;
|
||||
border: 1px solid transparent;
|
||||
background-color: transparent;
|
||||
padding: 0px 3px 0px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton:hover {
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton:checked {
|
||||
color: #ff8040;
|
||||
}
|
||||
|
||||
QPushButton#GPUStatusBarButton:!checked {
|
||||
color: #40dd40;
|
||||
}
|
||||
|
||||
QPushButton#DockingStatusBarButton {
|
||||
min-width: 0px;
|
||||
color: palette(text);
|
||||
border: 1px solid transparent;
|
||||
background-color: transparent;
|
||||
padding: 0px 3px 0px 3px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
QPushButton#DockingStatusBarButton:hover {
|
||||
border: 1px solid #76797C;
|
||||
}
|
||||
|
||||
QPushButton#buttonRefreshDevices {
|
||||
min-width: 21px;
|
||||
min-height: 21px;
|
||||
max-width: 21px;
|
||||
max-height: 21px;
|
||||
}
|
||||
|
||||
QWidget#bottomPerGameInput,
|
||||
QWidget#topControllerApplet,
|
||||
QWidget#bottomControllerApplet,
|
||||
QGroupBox#groupPlayer1Connected:checked,
|
||||
QGroupBox#groupPlayer2Connected:checked,
|
||||
QGroupBox#groupPlayer3Connected:checked,
|
||||
QGroupBox#groupPlayer4Connected:checked,
|
||||
QGroupBox#groupPlayer5Connected:checked,
|
||||
QGroupBox#groupPlayer6Connected:checked,
|
||||
QGroupBox#groupPlayer7Connected:checked,
|
||||
QGroupBox#groupPlayer8Connected:checked {
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
|
||||
QWidget#topControllerApplet {
|
||||
border-bottom: 1px solid #828790
|
||||
}
|
||||
|
||||
QWidget#bottomPerGameInput,
|
||||
QWidget#bottomControllerApplet {
|
||||
border-top: 1px solid #828790
|
||||
}
|
||||
|
||||
QWidget#topPerGameInput,
|
||||
QWidget#middleControllerApplet {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
QWidget#topPerGameInput QComboBox,
|
||||
QWidget#middleControllerApplet QComboBox {
|
||||
width: 120px;
|
||||
}
|
||||
|
||||
QWidget#connectedControllers {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QWidget#playersSupported,
|
||||
QWidget#controllersSupported,
|
||||
QWidget#controllerSupported1,
|
||||
QWidget#controllerSupported2,
|
||||
QWidget#controllerSupported3,
|
||||
QWidget#controllerSupported4,
|
||||
QWidget#controllerSupported5,
|
||||
QWidget#controllerSupported6 {
|
||||
border: none;
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QGroupBox#groupPlayer1Connected,
|
||||
QGroupBox#groupPlayer2Connected,
|
||||
QGroupBox#groupPlayer3Connected,
|
||||
QGroupBox#groupPlayer4Connected,
|
||||
QGroupBox#groupPlayer5Connected,
|
||||
QGroupBox#groupPlayer6Connected,
|
||||
QGroupBox#groupPlayer7Connected,
|
||||
QGroupBox#groupPlayer8Connected {
|
||||
border: 1px solid #828790;
|
||||
border-radius: 3px;
|
||||
padding: 0px;
|
||||
min-height: 98px;
|
||||
max-height: 98px;
|
||||
}
|
||||
|
||||
QGroupBox#groupPlayer1Connected:unchecked,
|
||||
QGroupBox#groupPlayer2Connected:unchecked,
|
||||
QGroupBox#groupPlayer3Connected:unchecked,
|
||||
QGroupBox#groupPlayer4Connected:unchecked,
|
||||
QGroupBox#groupPlayer5Connected:unchecked,
|
||||
QGroupBox#groupPlayer6Connected:unchecked,
|
||||
QGroupBox#groupPlayer7Connected:unchecked,
|
||||
QGroupBox#groupPlayer8Connected:unchecked {
|
||||
border: 1px solid #d9d9d9;
|
||||
}
|
||||
|
||||
QGroupBox#groupPlayer1Connected::title,
|
||||
QGroupBox#groupPlayer2Connected::title,
|
||||
QGroupBox#groupPlayer3Connected::title,
|
||||
QGroupBox#groupPlayer4Connected::title,
|
||||
QGroupBox#groupPlayer5Connected::title,
|
||||
QGroupBox#groupPlayer6Connected::title,
|
||||
QGroupBox#groupPlayer7Connected::title,
|
||||
QGroupBox#groupPlayer8Connected::title {
|
||||
subcontrol-origin: margin;
|
||||
subcontrol-position: top left;
|
||||
padding-left: 0px;
|
||||
padding-right: 0px;
|
||||
padding-top: 1px;
|
||||
margin-left: 0px;
|
||||
margin-right: -4px;
|
||||
margin-bottom: 4px;
|
||||
}
|
||||
|
||||
QCheckBox#checkboxPlayer1Connected,
|
||||
QCheckBox#checkboxPlayer2Connected,
|
||||
QCheckBox#checkboxPlayer3Connected,
|
||||
QCheckBox#checkboxPlayer4Connected,
|
||||
QCheckBox#checkboxPlayer5Connected,
|
||||
QCheckBox#checkboxPlayer6Connected,
|
||||
QCheckBox#checkboxPlayer7Connected,
|
||||
QCheckBox#checkboxPlayer8Connected {
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
QWidget#Player1LEDs QCheckBox,
|
||||
QWidget#Player2LEDs QCheckBox,
|
||||
QWidget#Player3LEDs QCheckBox,
|
||||
QWidget#Player4LEDs QCheckBox,
|
||||
QWidget#Player5LEDs QCheckBox,
|
||||
QWidget#Player6LEDs QCheckBox,
|
||||
QWidget#Player7LEDs QCheckBox,
|
||||
QWidget#Player8LEDs QCheckBox {
|
||||
spacing: 0px;
|
||||
}
|
||||
|
||||
QWidget#Player1LEDs QCheckBox::indicator,
|
||||
QWidget#Player2LEDs QCheckBox::indicator,
|
||||
QWidget#Player3LEDs QCheckBox::indicator,
|
||||
QWidget#Player4LEDs QCheckBox::indicator,
|
||||
QWidget#Player5LEDs QCheckBox::indicator,
|
||||
QWidget#Player6LEDs QCheckBox::indicator,
|
||||
QWidget#Player7LEDs QCheckBox::indicator,
|
||||
QWidget#Player8LEDs QCheckBox::indicator {
|
||||
width: 6px;
|
||||
height: 6px;
|
||||
margin-left: 0px;
|
||||
}
|
||||
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer1Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer2Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer3Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer4Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer5Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer6Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer7Connected::indicator,
|
||||
QWidget#bottomPerGameInput QCheckBox#checkboxPlayer8Connected::indicator {
|
||||
width: 12px;
|
||||
height: 12px;
|
||||
}
|
||||
|
||||
QCheckBox#checkboxPlayer1Connected::indicator,
|
||||
QCheckBox#checkboxPlayer2Connected::indicator,
|
||||
QCheckBox#checkboxPlayer3Connected::indicator,
|
||||
QCheckBox#checkboxPlayer4Connected::indicator,
|
||||
QCheckBox#checkboxPlayer5Connected::indicator,
|
||||
QCheckBox#checkboxPlayer6Connected::indicator,
|
||||
QCheckBox#checkboxPlayer7Connected::indicator,
|
||||
QCheckBox#checkboxPlayer8Connected::indicator {
|
||||
width: 14px;
|
||||
height: 14px;
|
||||
}
|
||||
|
||||
QGroupBox#groupPlayer1Connected::indicator,
|
||||
QGroupBox#groupPlayer2Connected::indicator,
|
||||
QGroupBox#groupPlayer3Connected::indicator,
|
||||
QGroupBox#groupPlayer4Connected::indicator,
|
||||
QGroupBox#groupPlayer5Connected::indicator,
|
||||
QGroupBox#groupPlayer6Connected::indicator,
|
||||
QGroupBox#groupPlayer7Connected::indicator,
|
||||
QGroupBox#groupPlayer8Connected::indicator {
|
||||
width: 16px;
|
||||
height: 16px;
|
||||
}
|
||||
|
||||
QWidget#Player1LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player2LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player3LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player4LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player5LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player6LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player7LEDs QCheckBox::indicator:checked,
|
||||
QWidget#Player8LEDs QCheckBox::indicator:checked,
|
||||
QGroupBox#groupPlayer1Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer2Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer3Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer4Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer5Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer6Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer7Connected::indicator:checked,
|
||||
QGroupBox#groupPlayer8Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer1Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer2Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer3Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer4Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer5Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer6Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer7Connected::indicator:checked,
|
||||
QCheckBox#checkboxPlayer8Connected::indicator:checked,
|
||||
QGroupBox#groupConnectedController::indicator:checked {
|
||||
border-radius: 2px;
|
||||
border: 1px solid #929192;
|
||||
background: #39ff14;
|
||||
image: none;
|
||||
}
|
||||
|
||||
QWidget#Player1LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player2LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player3LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player4LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player5LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player6LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player7LEDs QCheckBox::indicator:unchecked,
|
||||
QWidget#Player8LEDs QCheckBox::indicator:unchecked,
|
||||
QGroupBox#groupPlayer1Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer2Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer3Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer4Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer5Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer6Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer7Connected::indicator:unchecked,
|
||||
QGroupBox#groupPlayer8Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer1Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer2Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer3Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer4Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer5Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer6Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer7Connected::indicator:unchecked,
|
||||
QCheckBox#checkboxPlayer8Connected::indicator:unchecked,
|
||||
QGroupBox#groupConnectedController::indicator:unchecked {
|
||||
border-radius: 2px;
|
||||
border: 1px solid #929192;
|
||||
background: transparent;
|
||||
image: none;
|
||||
}
|
||||
|
||||
QWidget#controllerPlayer1,
|
||||
QWidget#controllerPlayer2,
|
||||
QWidget#controllerPlayer3,
|
||||
QWidget#controllerPlayer4,
|
||||
QWidget#controllerPlayer5,
|
||||
QWidget#controllerPlayer6,
|
||||
QWidget#controllerPlayer7,
|
||||
QWidget#controllerPlayer8 {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog,
|
||||
QStackedWidget#topOSK {
|
||||
background: rgba(51, 51, 51, .9);
|
||||
}
|
||||
|
||||
|
||||
QDialog#OverlayDialog,
|
||||
QStackedWidget#stackedDialog {
|
||||
background: rgba(51, 51, 51, .7);
|
||||
}
|
||||
|
||||
QWidget#boxOSK,
|
||||
QWidget#lineOSK,
|
||||
QWidget#richDialog,
|
||||
QWidget#lineDialog {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QStackedWidget#bottomOSK,
|
||||
QWidget#contentDialog,
|
||||
QWidget#contentRichDialog {
|
||||
background: rgba(240, 240, 240, 1);
|
||||
}
|
||||
|
||||
QWidget#contentDialog,
|
||||
QWidget#contentRichDialog {
|
||||
margin: 5px;
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
QWidget#buttonsDialog,
|
||||
QWidget#buttonsRichDialog {
|
||||
margin: 5px;
|
||||
border-top: 2px solid rgba(44, 44, 44, 1);
|
||||
}
|
||||
|
||||
QWidget#legendOSKnum {
|
||||
border-top: 1px solid rgba(44, 44, 44, 1);
|
||||
}
|
||||
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::vertical {
|
||||
background: #cdcdcd;
|
||||
width: 15px;
|
||||
margin: 15px 3px 15px 3px;
|
||||
border: 1px transparent;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::horizoncal {
|
||||
background: #cdcdcd;
|
||||
height: 15px;
|
||||
margin: 3px 15px 3px 15px;
|
||||
border: 1px transparent;
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::handle {
|
||||
background: #fff;
|
||||
border-radius: 4px;
|
||||
min-height: 5px;
|
||||
min-width: 5px;
|
||||
}
|
||||
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::add-line,
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::sub-line,
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::add-page,
|
||||
QStackedWidget#stackedDialog QTextBrowser QScrollBar::sub-page {
|
||||
background: none;
|
||||
}
|
||||
|
||||
QWidget#inputOSK {
|
||||
border-bottom: 3px solid rgba(255, 255, 255, .9);
|
||||
}
|
||||
|
||||
QWidget#inputOSK QLineEdit {
|
||||
background: transparent;
|
||||
border: none;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
QWidget#inputBoxOSK {
|
||||
border: 2px solid rgba(255, 255, 255, .9);
|
||||
}
|
||||
|
||||
QWidget#inputBoxOSK QTextEdit {
|
||||
background: transparent;
|
||||
border: none;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
QWidget#richDialog QTextBrowser {
|
||||
background: transparent;
|
||||
border: none;
|
||||
padding: 35px 65px;
|
||||
}
|
||||
|
||||
|
||||
QWidget#lineOSK QLabel#label_header {
|
||||
color: #f0f0f0;
|
||||
}
|
||||
|
||||
QWidget#lineOSK QLabel#label_sub,
|
||||
QWidget#lineOSK QLabel#label_characters,
|
||||
QWidget#boxOSK QLabel#label_characters_box {
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
QWidget#contentDialog QLabel#label_title,
|
||||
QWidget#contentRichDialog QLabel#label_title_rich {
|
||||
color: #888;
|
||||
}
|
||||
|
||||
QWidget#contentDialog QLabel#label_dialog {
|
||||
padding: 20px 65px;
|
||||
}
|
||||
|
||||
QWidget#contentDialog QLabel#label_title,
|
||||
QWidget#contentRichDialog QLabel#label_title_rich {
|
||||
padding: 0px 65px;
|
||||
}
|
||||
|
||||
QDialog#OverlayDialog QPushButton {
|
||||
color: rgba(49, 79, 239, 1);
|
||||
background: transparent;
|
||||
border: none;
|
||||
padding: 0px;
|
||||
min-width: 0px;
|
||||
}
|
||||
|
||||
QDialog#OverlayDialog QPushButton:focus,
|
||||
QDialog#OverlayDialog QPushButton:hover {
|
||||
color: rgba(49, 79, 239, 1);
|
||||
background: rgba(255, 255, 255, 1);
|
||||
border: 5px solid rgba(148, 250, 202, 1);
|
||||
border-radius: 6px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
QDialog#OverlayDialog QPushButton:pressed {
|
||||
color: rgba(240, 240, 240, 1);
|
||||
background: rgba(150, 150, 150, 1);
|
||||
border: 5px solid rgba(148, 250, 202, 1);
|
||||
border-radius: 6px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton {
|
||||
background: rgba(232, 232, 232, 1);
|
||||
border: 2px solid rgba(240, 240, 240, 1);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift {
|
||||
background: rgba(218, 218, 218, 1);
|
||||
border: 2px solid rgba(240, 240, 240, 1);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num {
|
||||
color: rgba(240, 240, 240, 1);
|
||||
background: rgba(44, 44, 44, 1);
|
||||
border: 2px solid rgba(240, 240, 240, 1);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num {
|
||||
color: rgba(240, 240, 240, 1);
|
||||
background: rgba(49, 79, 239, 1);
|
||||
border: 2px solid rgba(240, 240, 240, 1);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:focus,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:focus,
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:hover,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:hover {
|
||||
color: rgba(0, 0, 0, 1);
|
||||
background: rgba(255, 255, 255, 1);
|
||||
border: 5px solid rgba(148, 250, 202, 1);
|
||||
border-radius: 6px;
|
||||
outline: none;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:pressed,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:pressed {
|
||||
color: rgba(240, 240, 240, 1);
|
||||
background: rgba(150, 150, 150, 1);
|
||||
border: 5px solid rgba(148, 250, 202, 1);
|
||||
border-radius: 6px;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num {
|
||||
image: url(:/overlay/osk_button_B.png);
|
||||
image-position: right;
|
||||
qproperty-icon: url(:/overlay/osk_button_backspace.png);
|
||||
qproperty-iconSize: 36px;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift {
|
||||
image: url(:/overlay/osk_button_Y.png);
|
||||
image-position: right;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num {
|
||||
image: url(:/overlay/osk_button_plus.png);
|
||||
image-position: right;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift {
|
||||
image: url(:/overlay/osk_button_shift_lock_off.png);
|
||||
image-position: left;
|
||||
qproperty-icon: url(:/overlay/osk_button_shift.png);
|
||||
qproperty-iconSize: 36px;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift {
|
||||
image: url(:/overlay/osk_button_shift_lock_off.png);
|
||||
image-position: left;
|
||||
qproperty-icon: url(:/overlay/osk_button_shift_on.png);
|
||||
qproperty-iconSize: 36px;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_left_bracket,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_right_bracket,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_left_parenthesis,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_right_parenthesis {
|
||||
padding-bottom: 7px;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#titleOSK QLabel {
|
||||
background: transparent;
|
||||
color: #ccc;
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_L,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_L_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_L_num {
|
||||
image: url(:/overlay/button_L.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#arrow_left,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#arrow_left_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#arrow_left_num {
|
||||
image: url(:/overlay/arrow_left.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_R,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_R_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_R_num {
|
||||
image: url(:/overlay/button_R.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#arrow_right,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#arrow_right_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#arrow_right_num {
|
||||
image: url(:/overlay/arrow_right.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_press_stick,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_press_stick_shift {
|
||||
image: url(:/overlay/button_press_stick.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_X,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_X_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_X_num {
|
||||
image: url(:/overlay/button_X.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_A,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_A_shift,
|
||||
QDialog#QtSoftwareKeyboardDialog QWidget#button_A_num {
|
||||
image: url(:/overlay/button_A.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:disabled {
|
||||
color: rgba(164, 164, 164, 1);
|
||||
background-color: rgba(218, 218, 218, 1);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_at:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_slash:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_percent:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_1:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_2:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_3:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_4:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_5:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_6:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_7:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_8:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_9:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_0:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:disabled {
|
||||
color: rgba(164, 164, 164, 1);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:disabled {
|
||||
image: url(:/overlay/osk_button_plus_disabled.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:disabled {
|
||||
image: url(:/overlay/osk_button_B_disabled.png);
|
||||
}
|
||||
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:disabled,
|
||||
QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:disabled {
|
||||
image: url(:/overlay/osk_button_Y_disabled.png);
|
||||
}
|
||||
32
dist/qt_themes/monochrome/icons.qrc
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<qresource prefix="icons/monochrome">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">icons/16x16/lock.png</file>
|
||||
<file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
|
||||
<!-- Dark variant icons -->
|
||||
<qresource prefix="icons/monochrome_dark">
|
||||
<file alias="index.theme">../monochrome_dark/icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../monochrome_dark/icons/16x16/lock.png</file>
|
||||
<file alias="48x48/bad_folder.png">../monochrome_dark/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../monochrome_dark/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../monochrome_dark/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">../monochrome_dark/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/no_avatar.png">../monochrome_dark/icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/sd_card.png">../monochrome_dark/icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">../monochrome_dark/icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">../monochrome_dark/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
BIN
dist/qt_themes/monochrome/icons/16x16/lock.png
vendored
Normal file
|
After Width: | Height: | Size: 318 B |
BIN
dist/qt_themes/monochrome/icons/256x256/plus_folder.png
vendored
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
dist/qt_themes/monochrome/icons/48x48/bad_folder.png
vendored
Normal file
|
After Width: | Height: | Size: 1007 B |
BIN
dist/qt_themes/monochrome/icons/48x48/chip.png
vendored
Normal file
|
After Width: | Height: | Size: 511 B |
BIN
dist/qt_themes/monochrome/icons/48x48/folder.png
vendored
Normal file
|
After Width: | Height: | Size: 535 B |
BIN
dist/qt_themes/monochrome/icons/48x48/list-add.png
vendored
Normal file
|
After Width: | Height: | Size: 204 B |
BIN
dist/qt_themes/monochrome/icons/48x48/sd_card.png
vendored
Normal file
|
After Width: | Height: | Size: 198 B |
BIN
dist/qt_themes/monochrome/icons/48x48/star.png
vendored
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
@@ -1,8 +1,9 @@
|
||||
[Icon Theme]
|
||||
Name=colorful
|
||||
Comment=Colorful theme
|
||||
Name=monochrome
|
||||
Comment=Monochrome light icons
|
||||
Inherits=default
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
|
||||
5
dist/qt_themes/monochrome/style.qrc
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
<RCC>
|
||||
<qresource prefix="monochrome">
|
||||
<file alias="style.qss">../default/style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
Before Width: | Height: | Size: 343 B After Width: | Height: | Size: 343 B |
|
Before Width: | Height: | Size: 1.9 KiB After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 551 B After Width: | Height: | Size: 551 B |
|
Before Width: | Height: | Size: 594 B After Width: | Height: | Size: 594 B |
|
Before Width: | Height: | Size: 204 B After Width: | Height: | Size: 204 B |
|
Before Width: | Height: | Size: 763 B After Width: | Height: | Size: 763 B |
|
Before Width: | Height: | Size: 214 B After Width: | Height: | Size: 214 B |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
14
dist/qt_themes/monochrome_dark/icons/index.theme
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
[Icon Theme]
|
||||
Name=monochrome_dark
|
||||
Comment=Monochrome dark icons
|
||||
Inherits=default_dark
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
|
||||
[48x48]
|
||||
Size=48
|
||||
|
||||
[256x256]
|
||||
Size=256
|
||||
51
dist/qt_themes/qdarkstyle/icons.qrc
vendored
Normal file
@@ -0,0 +1,51 @@
|
||||
<RCC>
|
||||
<qresource prefix="icons/qdarkstyle">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../default_dark/icons/16x16/lock.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="icons/qdarkstyle_dark">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../default_dark/icons/16x16/lock.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="qss_icons">
|
||||
<file>rc/branch_closed-on.png</file>
|
||||
<file>rc/branch_closed.png</file>
|
||||
<file>rc/branch_open-on.png</file>
|
||||
<file>rc/branch_open.png</file>
|
||||
<file>rc/checkbox_checked.png</file>
|
||||
<file>rc/checkbox_checked_disabled.png</file>
|
||||
<file>rc/checkbox_checked_focus.png</file>
|
||||
<file>rc/checkbox_indeterminate.png</file>
|
||||
<file>rc/checkbox_indeterminate_focus.png</file>
|
||||
<file>rc/checkbox_unchecked.png</file>
|
||||
<file>rc/checkbox_unchecked_disabled.png</file>
|
||||
<file>rc/checkbox_unchecked_focus.png</file>
|
||||
<file>rc/close-hover.png</file>
|
||||
<file>rc/close-pressed.png</file>
|
||||
<file>rc/close.png</file>
|
||||
<file>rc/down_arrow.png</file>
|
||||
<file>rc/down_arrow_disabled.png</file>
|
||||
<file>rc/Hmovetoolbar.png</file>
|
||||
<file>rc/Hsepartoolbar.png</file>
|
||||
<file>rc/left_arrow.png</file>
|
||||
<file>rc/left_arrow_disabled.png</file>
|
||||
<file>rc/radio_checked.png</file>
|
||||
<file>rc/radio_checked_disabled.png</file>
|
||||
<file>rc/radio_checked_focus.png</file>
|
||||
<file>rc/radio_unchecked.png</file>
|
||||
<file>rc/radio_unchecked_disabled.png</file>
|
||||
<file>rc/radio_unchecked_focus.png</file>
|
||||
<file>rc/right_arrow.png</file>
|
||||
<file>rc/right_arrow_disabled.png</file>
|
||||
<file>rc/sizegrip.png</file>
|
||||
<file>rc/stylesheet-branch-end.png</file>
|
||||
<file>rc/stylesheet-branch-more.png</file>
|
||||
<file>rc/stylesheet-vline.png</file>
|
||||
<file>rc/transparent.png</file>
|
||||
<file>rc/undock.png</file>
|
||||
<file>rc/up_arrow.png</file>
|
||||
<file>rc/up_arrow_disabled.png</file>
|
||||
<file>rc/Vmovetoolbar.png</file>
|
||||
<file>rc/Vsepartoolbar.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
BIN
dist/qt_themes/qdarkstyle/icons/16x16/connected.png
vendored
|
Before Width: | Height: | Size: 575 B |
|
Before Width: | Height: | Size: 760 B |
|
Before Width: | Height: | Size: 648 B |
|
Before Width: | Height: | Size: 362 B |
14
dist/qt_themes/qdarkstyle/icons/index.theme
vendored
@@ -1,14 +1,4 @@
|
||||
[Icon Theme]
|
||||
Name=qdarkstyle
|
||||
Comment=dark theme
|
||||
Inherits=colorful
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
|
||||
[48x48]
|
||||
Size=48
|
||||
|
||||
[256x256]
|
||||
Size=256
|
||||
Comment=Dark theme (Mine Shaft style)
|
||||
Inherits=default_dark
|
||||
|
||||
63
dist/qt_themes/qdarkstyle/style.qrc
vendored
@@ -1,62 +1,5 @@
|
||||
<RCC>
|
||||
<qresource prefix="icons/qdarkstyle">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/connected.png">icons/16x16/connected.png</file>
|
||||
<file alias="16x16/disconnected.png">icons/16x16/disconnected.png</file>
|
||||
<file alias="16x16/connected_notification.png">icons/16x16/connected_notification.png</file>
|
||||
<file alias="16x16/lock.png">icons/16x16/lock.png</file>
|
||||
<file alias="16x16/view-refresh.png">icons/16x16/view-refresh.png</file>
|
||||
<file alias="48x48/bad_folder.png">icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">icons/48x48/folder.png</file>
|
||||
<file alias="48x48/no_avatar.png">icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/list-add.png">icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="qss_icons">
|
||||
<file>rc/up_arrow_disabled.png</file>
|
||||
<file>rc/Hmovetoolbar.png</file>
|
||||
<file>rc/stylesheet-branch-end.png</file>
|
||||
<file>rc/branch_closed-on.png</file>
|
||||
<file>rc/stylesheet-vline.png</file>
|
||||
<file>rc/branch_closed.png</file>
|
||||
<file>rc/branch_open-on.png</file>
|
||||
<file>rc/transparent.png</file>
|
||||
<file>rc/right_arrow_disabled.png</file>
|
||||
<file>rc/sizegrip.png</file>
|
||||
<file>rc/close.png</file>
|
||||
<file>rc/close-hover.png</file>
|
||||
<file>rc/close-pressed.png</file>
|
||||
<file>rc/down_arrow.png</file>
|
||||
<file>rc/Vmovetoolbar.png</file>
|
||||
<file>rc/left_arrow.png</file>
|
||||
<file>rc/stylesheet-branch-more.png</file>
|
||||
<file>rc/up_arrow.png</file>
|
||||
<file>rc/right_arrow.png</file>
|
||||
<file>rc/left_arrow_disabled.png</file>
|
||||
<file>rc/Hsepartoolbar.png</file>
|
||||
<file>rc/branch_open.png</file>
|
||||
<file>rc/Vsepartoolbar.png</file>
|
||||
<file>rc/down_arrow_disabled.png</file>
|
||||
<file>rc/undock.png</file>
|
||||
<file>rc/checkbox_checked_disabled.png</file>
|
||||
<file>rc/checkbox_checked_focus.png</file>
|
||||
<file>rc/checkbox_checked.png</file>
|
||||
<file>rc/checkbox_indeterminate.png</file>
|
||||
<file>rc/checkbox_indeterminate_focus.png</file>
|
||||
<file>rc/checkbox_unchecked_disabled.png</file>
|
||||
<file>rc/checkbox_unchecked_focus.png</file>
|
||||
<file>rc/checkbox_unchecked.png</file>
|
||||
<file>rc/radio_checked_disabled.png</file>
|
||||
<file>rc/radio_checked_focus.png</file>
|
||||
<file>rc/radio_checked.png</file>
|
||||
<file>rc/radio_unchecked_disabled.png</file>
|
||||
<file>rc/radio_unchecked_focus.png</file>
|
||||
<file>rc/radio_unchecked.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="qdarkstyle">
|
||||
<file>style.qss</file>
|
||||
</qresource>
|
||||
<qresource prefix="qdarkstyle">
|
||||
<file>style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
||||
8
dist/qt_themes/qdarkstyle/style.qss
vendored
@@ -944,6 +944,10 @@ QListView::indicator:indeterminate:pressed {
|
||||
image: url(:/qss_icons/rc/checkbox_indeterminate_focus.png);
|
||||
}
|
||||
|
||||
QSlider:horizontal {
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
QSlider::groove:horizontal {
|
||||
border: 1px solid #565a5e;
|
||||
height: 4px;
|
||||
@@ -1380,10 +1384,6 @@ QWidget#connectedControllers {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QWidget#closeButtons {
|
||||
background: transparent;
|
||||
}
|
||||
|
||||
QWidget#playersSupported,
|
||||
QWidget#controllersSupported,
|
||||
QWidget#controllerSupported1,
|
||||
|
||||
224
dist/qt_themes/qdarkstyle_midnight_blue/icons.qrc
vendored
Normal file
@@ -0,0 +1,224 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2020 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<qresource prefix="icons/qdarkstyle_midnight_blue">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
</qresource>
|
||||
<qresource prefix="icons/qdarkstyle_midnight_blue_dark">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
</qresource>
|
||||
|
||||
<qresource prefix="qss_icons">
|
||||
<file>rc/arrow_down.png</file>
|
||||
<file>rc/arrow_down@2x.png</file>
|
||||
<file>rc/arrow_down_disabled.png</file>
|
||||
<file>rc/arrow_down_disabled@2x.png</file>
|
||||
<file>rc/arrow_down_focus.png</file>
|
||||
<file>rc/arrow_down_focus@2x.png</file>
|
||||
<file>rc/arrow_down_pressed.png</file>
|
||||
<file>rc/arrow_down_pressed@2x.png</file>
|
||||
<file>rc/arrow_left.png</file>
|
||||
<file>rc/arrow_left@2x.png</file>
|
||||
<file>rc/arrow_left_disabled.png</file>
|
||||
<file>rc/arrow_left_disabled@2x.png</file>
|
||||
<file>rc/arrow_left_focus.png</file>
|
||||
<file>rc/arrow_left_focus@2x.png</file>
|
||||
<file>rc/arrow_left_pressed.png</file>
|
||||
<file>rc/arrow_left_pressed@2x.png</file>
|
||||
<file>rc/arrow_right.png</file>
|
||||
<file>rc/arrow_right@2x.png</file>
|
||||
<file>rc/arrow_right_disabled.png</file>
|
||||
<file>rc/arrow_right_disabled@2x.png</file>
|
||||
<file>rc/arrow_right_focus.png</file>
|
||||
<file>rc/arrow_right_focus@2x.png</file>
|
||||
<file>rc/arrow_right_pressed.png</file>
|
||||
<file>rc/arrow_right_pressed@2x.png</file>
|
||||
<file>rc/arrow_up.png</file>
|
||||
<file>rc/arrow_up@2x.png</file>
|
||||
<file>rc/arrow_up_disabled.png</file>
|
||||
<file>rc/arrow_up_disabled@2x.png</file>
|
||||
<file>rc/arrow_up_focus.png</file>
|
||||
<file>rc/arrow_up_focus@2x.png</file>
|
||||
<file>rc/arrow_up_pressed.png</file>
|
||||
<file>rc/arrow_up_pressed@2x.png</file>
|
||||
<file>rc/base_icon.png</file>
|
||||
<file>rc/base_icon@2x.png</file>
|
||||
<file>rc/base_icon_disabled.png</file>
|
||||
<file>rc/base_icon_disabled@2x.png</file>
|
||||
<file>rc/base_icon_focus.png</file>
|
||||
<file>rc/base_icon_focus@2x.png</file>
|
||||
<file>rc/base_icon_pressed.png</file>
|
||||
<file>rc/base_icon_pressed@2x.png</file>
|
||||
<file>rc/branch_closed.png</file>
|
||||
<file>rc/branch_closed@2x.png</file>
|
||||
<file>rc/branch_closed_disabled.png</file>
|
||||
<file>rc/branch_closed_disabled@2x.png</file>
|
||||
<file>rc/branch_closed_focus.png</file>
|
||||
<file>rc/branch_closed_focus@2x.png</file>
|
||||
<file>rc/branch_closed_pressed.png</file>
|
||||
<file>rc/branch_closed_pressed@2x.png</file>
|
||||
<file>rc/branch_end.png</file>
|
||||
<file>rc/branch_end@2x.png</file>
|
||||
<file>rc/branch_end_disabled.png</file>
|
||||
<file>rc/branch_end_disabled@2x.png</file>
|
||||
<file>rc/branch_end_focus.png</file>
|
||||
<file>rc/branch_end_focus@2x.png</file>
|
||||
<file>rc/branch_end_pressed.png</file>
|
||||
<file>rc/branch_end_pressed@2x.png</file>
|
||||
<file>rc/branch_line.png</file>
|
||||
<file>rc/branch_line@2x.png</file>
|
||||
<file>rc/branch_line_disabled.png</file>
|
||||
<file>rc/branch_line_disabled@2x.png</file>
|
||||
<file>rc/branch_line_focus.png</file>
|
||||
<file>rc/branch_line_focus@2x.png</file>
|
||||
<file>rc/branch_line_pressed.png</file>
|
||||
<file>rc/branch_line_pressed@2x.png</file>
|
||||
<file>rc/branch_more.png</file>
|
||||
<file>rc/branch_more@2x.png</file>
|
||||
<file>rc/branch_more_disabled.png</file>
|
||||
<file>rc/branch_more_disabled@2x.png</file>
|
||||
<file>rc/branch_more_focus.png</file>
|
||||
<file>rc/branch_more_focus@2x.png</file>
|
||||
<file>rc/branch_more_pressed.png</file>
|
||||
<file>rc/branch_more_pressed@2x.png</file>
|
||||
<file>rc/branch_open.png</file>
|
||||
<file>rc/branch_open@2x.png</file>
|
||||
<file>rc/branch_open_disabled.png</file>
|
||||
<file>rc/branch_open_disabled@2x.png</file>
|
||||
<file>rc/branch_open_focus.png</file>
|
||||
<file>rc/branch_open_focus@2x.png</file>
|
||||
<file>rc/branch_open_pressed.png</file>
|
||||
<file>rc/branch_open_pressed@2x.png</file>
|
||||
<file>rc/checkbox_checked.png</file>
|
||||
<file>rc/checkbox_checked@2x.png</file>
|
||||
<file>rc/checkbox_checked_disabled.png</file>
|
||||
<file>rc/checkbox_checked_disabled@2x.png</file>
|
||||
<file>rc/checkbox_checked_focus.png</file>
|
||||
<file>rc/checkbox_checked_focus@2x.png</file>
|
||||
<file>rc/checkbox_checked_pressed.png</file>
|
||||
<file>rc/checkbox_checked_pressed@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate.png</file>
|
||||
<file>rc/checkbox_indeterminate@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate_disabled.png</file>
|
||||
<file>rc/checkbox_indeterminate_disabled@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate_focus.png</file>
|
||||
<file>rc/checkbox_indeterminate_focus@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate_pressed.png</file>
|
||||
<file>rc/checkbox_indeterminate_pressed@2x.png</file>
|
||||
<file>rc/checkbox_unchecked.png</file>
|
||||
<file>rc/checkbox_unchecked@2x.png</file>
|
||||
<file>rc/checkbox_unchecked_disabled.png</file>
|
||||
<file>rc/checkbox_unchecked_disabled@2x.png</file>
|
||||
<file>rc/checkbox_unchecked_focus.png</file>
|
||||
<file>rc/checkbox_unchecked_focus@2x.png</file>
|
||||
<file>rc/checkbox_unchecked_pressed.png</file>
|
||||
<file>rc/checkbox_unchecked_pressed@2x.png</file>
|
||||
<file>rc/line_horizontal.png</file>
|
||||
<file>rc/line_horizontal@2x.png</file>
|
||||
<file>rc/line_horizontal_disabled.png</file>
|
||||
<file>rc/line_horizontal_disabled@2x.png</file>
|
||||
<file>rc/line_horizontal_focus.png</file>
|
||||
<file>rc/line_horizontal_focus@2x.png</file>
|
||||
<file>rc/line_horizontal_pressed.png</file>
|
||||
<file>rc/line_horizontal_pressed@2x.png</file>
|
||||
<file>rc/line_vertical.png</file>
|
||||
<file>rc/line_vertical@2x.png</file>
|
||||
<file>rc/line_vertical_disabled.png</file>
|
||||
<file>rc/line_vertical_disabled@2x.png</file>
|
||||
<file>rc/line_vertical_focus.png</file>
|
||||
<file>rc/line_vertical_focus@2x.png</file>
|
||||
<file>rc/line_vertical_pressed.png</file>
|
||||
<file>rc/line_vertical_pressed@2x.png</file>
|
||||
<file>rc/radio_checked.png</file>
|
||||
<file>rc/radio_checked@2x.png</file>
|
||||
<file>rc/radio_checked_disabled.png</file>
|
||||
<file>rc/radio_checked_disabled@2x.png</file>
|
||||
<file>rc/radio_checked_focus.png</file>
|
||||
<file>rc/radio_checked_focus@2x.png</file>
|
||||
<file>rc/radio_checked_pressed.png</file>
|
||||
<file>rc/radio_checked_pressed@2x.png</file>
|
||||
<file>rc/radio_unchecked.png</file>
|
||||
<file>rc/radio_unchecked@2x.png</file>
|
||||
<file>rc/radio_unchecked_disabled.png</file>
|
||||
<file>rc/radio_unchecked_disabled@2x.png</file>
|
||||
<file>rc/radio_unchecked_focus.png</file>
|
||||
<file>rc/radio_unchecked_focus@2x.png</file>
|
||||
<file>rc/radio_unchecked_pressed.png</file>
|
||||
<file>rc/radio_unchecked_pressed@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal.png</file>
|
||||
<file>rc/toolbar_move_horizontal@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal_disabled.png</file>
|
||||
<file>rc/toolbar_move_horizontal_disabled@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal_focus.png</file>
|
||||
<file>rc/toolbar_move_horizontal_focus@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal_pressed.png</file>
|
||||
<file>rc/toolbar_move_horizontal_pressed@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical.png</file>
|
||||
<file>rc/toolbar_move_vertical@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical_disabled.png</file>
|
||||
<file>rc/toolbar_move_vertical_disabled@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical_focus.png</file>
|
||||
<file>rc/toolbar_move_vertical_focus@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical_pressed.png</file>
|
||||
<file>rc/toolbar_move_vertical_pressed@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal.png</file>
|
||||
<file>rc/toolbar_separator_horizontal@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_disabled.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_disabled@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_focus.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_focus@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_pressed.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_pressed@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical.png</file>
|
||||
<file>rc/toolbar_separator_vertical@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical_disabled.png</file>
|
||||
<file>rc/toolbar_separator_vertical_disabled@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical_focus.png</file>
|
||||
<file>rc/toolbar_separator_vertical_focus@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical_pressed.png</file>
|
||||
<file>rc/toolbar_separator_vertical_pressed@2x.png</file>
|
||||
<file>rc/transparent.png</file>
|
||||
<file>rc/transparent@2x.png</file>
|
||||
<file>rc/transparent_disabled.png</file>
|
||||
<file>rc/transparent_disabled@2x.png</file>
|
||||
<file>rc/transparent_focus.png</file>
|
||||
<file>rc/transparent_focus@2x.png</file>
|
||||
<file>rc/transparent_pressed.png</file>
|
||||
<file>rc/transparent_pressed@2x.png</file>
|
||||
<file>rc/window_close.png</file>
|
||||
<file>rc/window_close@2x.png</file>
|
||||
<file>rc/window_close_disabled.png</file>
|
||||
<file>rc/window_close_disabled@2x.png</file>
|
||||
<file>rc/window_close_focus.png</file>
|
||||
<file>rc/window_close_focus@2x.png</file>
|
||||
<file>rc/window_close_pressed.png</file>
|
||||
<file>rc/window_close_pressed@2x.png</file>
|
||||
<file>rc/window_grip.png</file>
|
||||
<file>rc/window_grip@2x.png</file>
|
||||
<file>rc/window_grip_disabled.png</file>
|
||||
<file>rc/window_grip_disabled@2x.png</file>
|
||||
<file>rc/window_grip_focus.png</file>
|
||||
<file>rc/window_grip_focus@2x.png</file>
|
||||
<file>rc/window_grip_pressed.png</file>
|
||||
<file>rc/window_grip_pressed@2x.png</file>
|
||||
<file>rc/window_minimize.png</file>
|
||||
<file>rc/window_minimize@2x.png</file>
|
||||
<file>rc/window_minimize_disabled.png</file>
|
||||
<file>rc/window_minimize_disabled@2x.png</file>
|
||||
<file>rc/window_minimize_focus.png</file>
|
||||
<file>rc/window_minimize_focus@2x.png</file>
|
||||
<file>rc/window_minimize_pressed.png</file>
|
||||
<file>rc/window_minimize_pressed@2x.png</file>
|
||||
<file>rc/window_undock.png</file>
|
||||
<file>rc/window_undock@2x.png</file>
|
||||
<file>rc/window_undock_disabled.png</file>
|
||||
<file>rc/window_undock_disabled@2x.png</file>
|
||||
<file>rc/window_undock_focus.png</file>
|
||||
<file>rc/window_undock_focus@2x.png</file>
|
||||
<file>rc/window_undock_pressed.png</file>
|
||||
<file>rc/window_undock_pressed@2x.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
@@ -1,14 +1,4 @@
|
||||
[Icon Theme]
|
||||
Name=qdarkstyle_midnight_blue
|
||||
Comment=dark theme
|
||||
Inherits=colorful
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
|
||||
[48x48]
|
||||
Size=48
|
||||
|
||||
[256x256]
|
||||
Size=256
|
||||
Comment=Dark theme (Midnight Blue style)
|
||||
Inherits=default_dark
|
||||
|
||||
229
dist/qt_themes/qdarkstyle_midnight_blue/style.qrc
vendored
@@ -1,228 +1,5 @@
|
||||
<RCC>
|
||||
<qresource prefix="icons/qdarkstyle_midnight_blue">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../qdarkstyle/icons/16x16/lock.png</file>
|
||||
<file alias="16x16/view-refresh.png">../qdarkstyle/icons/16x16/view-refresh.png</file>
|
||||
<file alias="48x48/bad_folder.png">../qdarkstyle/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../qdarkstyle/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../qdarkstyle/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/no_avatar.png">../qdarkstyle/icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/list-add.png">../qdarkstyle/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">../qdarkstyle/icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">../qdarkstyle/icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">../qdarkstyle/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="qss_icons">
|
||||
<file>rc/arrow_down.png</file>
|
||||
<file>rc/arrow_down@2x.png</file>
|
||||
<file>rc/arrow_down_disabled.png</file>
|
||||
<file>rc/arrow_down_disabled@2x.png</file>
|
||||
<file>rc/arrow_down_focus.png</file>
|
||||
<file>rc/arrow_down_focus@2x.png</file>
|
||||
<file>rc/arrow_down_pressed.png</file>
|
||||
<file>rc/arrow_down_pressed@2x.png</file>
|
||||
<file>rc/arrow_left.png</file>
|
||||
<file>rc/arrow_left@2x.png</file>
|
||||
<file>rc/arrow_left_disabled.png</file>
|
||||
<file>rc/arrow_left_disabled@2x.png</file>
|
||||
<file>rc/arrow_left_focus.png</file>
|
||||
<file>rc/arrow_left_focus@2x.png</file>
|
||||
<file>rc/arrow_left_pressed.png</file>
|
||||
<file>rc/arrow_left_pressed@2x.png</file>
|
||||
<file>rc/arrow_right.png</file>
|
||||
<file>rc/arrow_right@2x.png</file>
|
||||
<file>rc/arrow_right_disabled.png</file>
|
||||
<file>rc/arrow_right_disabled@2x.png</file>
|
||||
<file>rc/arrow_right_focus.png</file>
|
||||
<file>rc/arrow_right_focus@2x.png</file>
|
||||
<file>rc/arrow_right_pressed.png</file>
|
||||
<file>rc/arrow_right_pressed@2x.png</file>
|
||||
<file>rc/arrow_up.png</file>
|
||||
<file>rc/arrow_up@2x.png</file>
|
||||
<file>rc/arrow_up_disabled.png</file>
|
||||
<file>rc/arrow_up_disabled@2x.png</file>
|
||||
<file>rc/arrow_up_focus.png</file>
|
||||
<file>rc/arrow_up_focus@2x.png</file>
|
||||
<file>rc/arrow_up_pressed.png</file>
|
||||
<file>rc/arrow_up_pressed@2x.png</file>
|
||||
<file>rc/base_icon.png</file>
|
||||
<file>rc/base_icon@2x.png</file>
|
||||
<file>rc/base_icon_disabled.png</file>
|
||||
<file>rc/base_icon_disabled@2x.png</file>
|
||||
<file>rc/base_icon_focus.png</file>
|
||||
<file>rc/base_icon_focus@2x.png</file>
|
||||
<file>rc/base_icon_pressed.png</file>
|
||||
<file>rc/base_icon_pressed@2x.png</file>
|
||||
<file>rc/branch_closed.png</file>
|
||||
<file>rc/branch_closed@2x.png</file>
|
||||
<file>rc/branch_closed_disabled.png</file>
|
||||
<file>rc/branch_closed_disabled@2x.png</file>
|
||||
<file>rc/branch_closed_focus.png</file>
|
||||
<file>rc/branch_closed_focus@2x.png</file>
|
||||
<file>rc/branch_closed_pressed.png</file>
|
||||
<file>rc/branch_closed_pressed@2x.png</file>
|
||||
<file>rc/branch_end.png</file>
|
||||
<file>rc/branch_end@2x.png</file>
|
||||
<file>rc/branch_end_disabled.png</file>
|
||||
<file>rc/branch_end_disabled@2x.png</file>
|
||||
<file>rc/branch_end_focus.png</file>
|
||||
<file>rc/branch_end_focus@2x.png</file>
|
||||
<file>rc/branch_end_pressed.png</file>
|
||||
<file>rc/branch_end_pressed@2x.png</file>
|
||||
<file>rc/branch_line.png</file>
|
||||
<file>rc/branch_line@2x.png</file>
|
||||
<file>rc/branch_line_disabled.png</file>
|
||||
<file>rc/branch_line_disabled@2x.png</file>
|
||||
<file>rc/branch_line_focus.png</file>
|
||||
<file>rc/branch_line_focus@2x.png</file>
|
||||
<file>rc/branch_line_pressed.png</file>
|
||||
<file>rc/branch_line_pressed@2x.png</file>
|
||||
<file>rc/branch_more.png</file>
|
||||
<file>rc/branch_more@2x.png</file>
|
||||
<file>rc/branch_more_disabled.png</file>
|
||||
<file>rc/branch_more_disabled@2x.png</file>
|
||||
<file>rc/branch_more_focus.png</file>
|
||||
<file>rc/branch_more_focus@2x.png</file>
|
||||
<file>rc/branch_more_pressed.png</file>
|
||||
<file>rc/branch_more_pressed@2x.png</file>
|
||||
<file>rc/branch_open.png</file>
|
||||
<file>rc/branch_open@2x.png</file>
|
||||
<file>rc/branch_open_disabled.png</file>
|
||||
<file>rc/branch_open_disabled@2x.png</file>
|
||||
<file>rc/branch_open_focus.png</file>
|
||||
<file>rc/branch_open_focus@2x.png</file>
|
||||
<file>rc/branch_open_pressed.png</file>
|
||||
<file>rc/branch_open_pressed@2x.png</file>
|
||||
<file>rc/checkbox_checked.png</file>
|
||||
<file>rc/checkbox_checked@2x.png</file>
|
||||
<file>rc/checkbox_checked_disabled.png</file>
|
||||
<file>rc/checkbox_checked_disabled@2x.png</file>
|
||||
<file>rc/checkbox_checked_focus.png</file>
|
||||
<file>rc/checkbox_checked_focus@2x.png</file>
|
||||
<file>rc/checkbox_checked_pressed.png</file>
|
||||
<file>rc/checkbox_checked_pressed@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate.png</file>
|
||||
<file>rc/checkbox_indeterminate@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate_disabled.png</file>
|
||||
<file>rc/checkbox_indeterminate_disabled@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate_focus.png</file>
|
||||
<file>rc/checkbox_indeterminate_focus@2x.png</file>
|
||||
<file>rc/checkbox_indeterminate_pressed.png</file>
|
||||
<file>rc/checkbox_indeterminate_pressed@2x.png</file>
|
||||
<file>rc/checkbox_unchecked.png</file>
|
||||
<file>rc/checkbox_unchecked@2x.png</file>
|
||||
<file>rc/checkbox_unchecked_disabled.png</file>
|
||||
<file>rc/checkbox_unchecked_disabled@2x.png</file>
|
||||
<file>rc/checkbox_unchecked_focus.png</file>
|
||||
<file>rc/checkbox_unchecked_focus@2x.png</file>
|
||||
<file>rc/checkbox_unchecked_pressed.png</file>
|
||||
<file>rc/checkbox_unchecked_pressed@2x.png</file>
|
||||
<file>rc/line_horizontal.png</file>
|
||||
<file>rc/line_horizontal@2x.png</file>
|
||||
<file>rc/line_horizontal_disabled.png</file>
|
||||
<file>rc/line_horizontal_disabled@2x.png</file>
|
||||
<file>rc/line_horizontal_focus.png</file>
|
||||
<file>rc/line_horizontal_focus@2x.png</file>
|
||||
<file>rc/line_horizontal_pressed.png</file>
|
||||
<file>rc/line_horizontal_pressed@2x.png</file>
|
||||
<file>rc/line_vertical.png</file>
|
||||
<file>rc/line_vertical@2x.png</file>
|
||||
<file>rc/line_vertical_disabled.png</file>
|
||||
<file>rc/line_vertical_disabled@2x.png</file>
|
||||
<file>rc/line_vertical_focus.png</file>
|
||||
<file>rc/line_vertical_focus@2x.png</file>
|
||||
<file>rc/line_vertical_pressed.png</file>
|
||||
<file>rc/line_vertical_pressed@2x.png</file>
|
||||
<file>rc/radio_checked.png</file>
|
||||
<file>rc/radio_checked@2x.png</file>
|
||||
<file>rc/radio_checked_disabled.png</file>
|
||||
<file>rc/radio_checked_disabled@2x.png</file>
|
||||
<file>rc/radio_checked_focus.png</file>
|
||||
<file>rc/radio_checked_focus@2x.png</file>
|
||||
<file>rc/radio_checked_pressed.png</file>
|
||||
<file>rc/radio_checked_pressed@2x.png</file>
|
||||
<file>rc/radio_unchecked.png</file>
|
||||
<file>rc/radio_unchecked@2x.png</file>
|
||||
<file>rc/radio_unchecked_disabled.png</file>
|
||||
<file>rc/radio_unchecked_disabled@2x.png</file>
|
||||
<file>rc/radio_unchecked_focus.png</file>
|
||||
<file>rc/radio_unchecked_focus@2x.png</file>
|
||||
<file>rc/radio_unchecked_pressed.png</file>
|
||||
<file>rc/radio_unchecked_pressed@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal.png</file>
|
||||
<file>rc/toolbar_move_horizontal@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal_disabled.png</file>
|
||||
<file>rc/toolbar_move_horizontal_disabled@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal_focus.png</file>
|
||||
<file>rc/toolbar_move_horizontal_focus@2x.png</file>
|
||||
<file>rc/toolbar_move_horizontal_pressed.png</file>
|
||||
<file>rc/toolbar_move_horizontal_pressed@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical.png</file>
|
||||
<file>rc/toolbar_move_vertical@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical_disabled.png</file>
|
||||
<file>rc/toolbar_move_vertical_disabled@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical_focus.png</file>
|
||||
<file>rc/toolbar_move_vertical_focus@2x.png</file>
|
||||
<file>rc/toolbar_move_vertical_pressed.png</file>
|
||||
<file>rc/toolbar_move_vertical_pressed@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal.png</file>
|
||||
<file>rc/toolbar_separator_horizontal@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_disabled.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_disabled@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_focus.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_focus@2x.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_pressed.png</file>
|
||||
<file>rc/toolbar_separator_horizontal_pressed@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical.png</file>
|
||||
<file>rc/toolbar_separator_vertical@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical_disabled.png</file>
|
||||
<file>rc/toolbar_separator_vertical_disabled@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical_focus.png</file>
|
||||
<file>rc/toolbar_separator_vertical_focus@2x.png</file>
|
||||
<file>rc/toolbar_separator_vertical_pressed.png</file>
|
||||
<file>rc/toolbar_separator_vertical_pressed@2x.png</file>
|
||||
<file>rc/transparent.png</file>
|
||||
<file>rc/transparent@2x.png</file>
|
||||
<file>rc/transparent_disabled.png</file>
|
||||
<file>rc/transparent_disabled@2x.png</file>
|
||||
<file>rc/transparent_focus.png</file>
|
||||
<file>rc/transparent_focus@2x.png</file>
|
||||
<file>rc/transparent_pressed.png</file>
|
||||
<file>rc/transparent_pressed@2x.png</file>
|
||||
<file>rc/window_close.png</file>
|
||||
<file>rc/window_close@2x.png</file>
|
||||
<file>rc/window_close_disabled.png</file>
|
||||
<file>rc/window_close_disabled@2x.png</file>
|
||||
<file>rc/window_close_focus.png</file>
|
||||
<file>rc/window_close_focus@2x.png</file>
|
||||
<file>rc/window_close_pressed.png</file>
|
||||
<file>rc/window_close_pressed@2x.png</file>
|
||||
<file>rc/window_grip.png</file>
|
||||
<file>rc/window_grip@2x.png</file>
|
||||
<file>rc/window_grip_disabled.png</file>
|
||||
<file>rc/window_grip_disabled@2x.png</file>
|
||||
<file>rc/window_grip_focus.png</file>
|
||||
<file>rc/window_grip_focus@2x.png</file>
|
||||
<file>rc/window_grip_pressed.png</file>
|
||||
<file>rc/window_grip_pressed@2x.png</file>
|
||||
<file>rc/window_minimize.png</file>
|
||||
<file>rc/window_minimize@2x.png</file>
|
||||
<file>rc/window_minimize_disabled.png</file>
|
||||
<file>rc/window_minimize_disabled@2x.png</file>
|
||||
<file>rc/window_minimize_focus.png</file>
|
||||
<file>rc/window_minimize_focus@2x.png</file>
|
||||
<file>rc/window_minimize_pressed.png</file>
|
||||
<file>rc/window_minimize_pressed@2x.png</file>
|
||||
<file>rc/window_undock.png</file>
|
||||
<file>rc/window_undock@2x.png</file>
|
||||
<file>rc/window_undock_disabled.png</file>
|
||||
<file>rc/window_undock_disabled@2x.png</file>
|
||||
<file>rc/window_undock_focus.png</file>
|
||||
<file>rc/window_undock_focus@2x.png</file>
|
||||
<file>rc/window_undock_pressed.png</file>
|
||||
<file>rc/window_undock_pressed@2x.png</file>
|
||||
</qresource>
|
||||
<qresource prefix="qdarkstyle_midnight_blue">
|
||||
<file>style.qss</file>
|
||||
</qresource>
|
||||
<qresource prefix="qdarkstyle_midnight_blue">
|
||||
<file>style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
||||
@@ -1296,6 +1296,10 @@ QSlider:focus {
|
||||
border: none;
|
||||
}
|
||||
|
||||
QSlider:horizontal {
|
||||
height: 20px;
|
||||
}
|
||||
|
||||
QSlider::groove:horizontal {
|
||||
background: #32414B;
|
||||
border: 1px solid #32414B;
|
||||
|
||||
33
dist/qt_themes/qdarkstyle_midnight_blue_monochrome/icons.qrc
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<!-- Theme is always dark, so we always use the same icons -->
|
||||
|
||||
<qresource prefix="icons/qdarkstyle_midnight_blue_monochrome">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../monochrome_dark/icons/16x16/lock.png</file>
|
||||
<file alias="48x48/bad_folder.png">../monochrome_dark/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../monochrome_dark/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../monochrome_dark/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">../monochrome_dark/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">../monochrome_dark/icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">../monochrome_dark/icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">../monochrome_dark/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
|
||||
<qresource prefix="icons/qdarkstyle_midnight_blue_monochrome_dark">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../monochrome_dark/icons/16x16/lock.png</file>
|
||||
<file alias="48x48/bad_folder.png">../monochrome_dark/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../monochrome_dark/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../monochrome_dark/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">../monochrome_dark/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/no_avatar.png">../monochrome_dark/icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/sd_card.png">../monochrome_dark/icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">../monochrome_dark/icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">../monochrome_dark/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
14
dist/qt_themes/qdarkstyle_midnight_blue_monochrome/icons/index.theme
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
[Icon Theme]
|
||||
Name=qdarkstyle_midnight_blue_monochrome
|
||||
Comment=Monochrome dark theme (Midnight Blue style)
|
||||
Inherits=qdarkstyle_midnight_blue
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
|
||||
[48x48]
|
||||
Size=48
|
||||
|
||||
[256x256]
|
||||
Size=256
|
||||
8
dist/qt_themes/qdarkstyle_midnight_blue_monochrome/style.qrc
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
<RCC>
|
||||
<qresource prefix="qdarkstyle_midnight_blue_monochrome">
|
||||
<file alias="style.qss">../qdarkstyle_midnight_blue/style.qss</file>
|
||||
</qresource>
|
||||
<qresource prefix="qdarkstyle_midnight_blue_monochrome_dark">
|
||||
<file alias="style.qss">../qdarkstyle/style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
33
dist/qt_themes/qdarkstyle_monochrome/icons.qrc
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
<!--
|
||||
SPDX-FileCopyrightText: 2018 yuzu Emulator Project
|
||||
SPDX-License-Identifier: GPL-2.0-or-later
|
||||
-->
|
||||
|
||||
<RCC>
|
||||
<!-- Theme is always dark, so we always use the same icons -->
|
||||
|
||||
<qresource prefix="icons/qdarkstyle_monochrome">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../monochrome_dark/icons/16x16/lock.png</file>
|
||||
<file alias="48x48/bad_folder.png">../monochrome_dark/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../monochrome_dark/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../monochrome_dark/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">../monochrome_dark/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/sd_card.png">../monochrome_dark/icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">../monochrome_dark/icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">../monochrome_dark/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
|
||||
<qresource prefix="icons/qdarkstyle_monochrome_dark">
|
||||
<file alias="index.theme">icons/index.theme</file>
|
||||
<file alias="16x16/lock.png">../monochrome_dark/icons/16x16/lock.png</file>
|
||||
<file alias="48x48/bad_folder.png">../monochrome_dark/icons/48x48/bad_folder.png</file>
|
||||
<file alias="48x48/chip.png">../monochrome_dark/icons/48x48/chip.png</file>
|
||||
<file alias="48x48/folder.png">../monochrome_dark/icons/48x48/folder.png</file>
|
||||
<file alias="48x48/list-add.png">../monochrome_dark/icons/48x48/list-add.png</file>
|
||||
<file alias="48x48/no_avatar.png">../monochrome_dark/icons/48x48/no_avatar.png</file>
|
||||
<file alias="48x48/sd_card.png">../monochrome_dark/icons/48x48/sd_card.png</file>
|
||||
<file alias="48x48/star.png">../monochrome_dark/icons/48x48/star.png</file>
|
||||
<file alias="256x256/plus_folder.png">../monochrome_dark/icons/256x256/plus_folder.png</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
14
dist/qt_themes/qdarkstyle_monochrome/icons/index.theme
vendored
Normal file
@@ -0,0 +1,14 @@
|
||||
[Icon Theme]
|
||||
Name=qdarkstyle_monochrome
|
||||
Comment=Monochrome dark theme (Mine Shaft style)
|
||||
Inherits=qdarkstyle
|
||||
Directories=16x16,48x48,256x256
|
||||
|
||||
[16x16]
|
||||
Size=16
|
||||
|
||||
[48x48]
|
||||
Size=48
|
||||
|
||||
[256x256]
|
||||
Size=256
|
||||
8
dist/qt_themes/qdarkstyle_monochrome/style.qrc
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
<RCC>
|
||||
<qresource prefix="qdarkstyle_monochrome">
|
||||
<file alias="style.qss">../qdarkstyle/style.qss</file>
|
||||
</qresource>
|
||||
<qresource prefix="qdarkstyle_monochrome_dark">
|
||||
<file alias="style.qss">../qdarkstyle/style.qss</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
2
externals/dynarmic
vendored
2
externals/nx_tzdb/tzdb_to_nx
vendored
@@ -3,8 +3,8 @@
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import kotlin.collections.setOf
|
||||
import org.jetbrains.kotlin.konan.properties.Properties
|
||||
import org.jlleitschuh.gradle.ktlint.reporter.ReporterType
|
||||
import com.github.triplet.gradle.androidpublisher.ReleaseStatus
|
||||
|
||||
plugins {
|
||||
id("com.android.application")
|
||||
@@ -13,6 +13,7 @@ plugins {
|
||||
kotlin("plugin.serialization") version "1.9.20"
|
||||
id("androidx.navigation.safeargs.kotlin")
|
||||
id("org.jlleitschuh.gradle.ktlint") version "11.4.0"
|
||||
id("com.github.triplet.play") version "3.8.6"
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -58,15 +59,7 @@ android {
|
||||
targetSdk = 34
|
||||
versionName = getGitVersion()
|
||||
|
||||
// If you want to use autoVersion for the versionCode, create a property in local.properties
|
||||
// named "autoVersioned" and set it to "true"
|
||||
val properties = Properties()
|
||||
val versionProperty = try {
|
||||
properties.load(project.rootProject.file("local.properties").inputStream())
|
||||
properties.getProperty("autoVersioned") ?: ""
|
||||
} catch (e: Exception) { "" }
|
||||
|
||||
versionCode = if (versionProperty == "true") {
|
||||
versionCode = if (System.getenv("AUTO_VERSIONED") == "true") {
|
||||
autoVersion
|
||||
} else {
|
||||
1
|
||||
@@ -221,6 +214,15 @@ ktlint {
|
||||
}
|
||||
}
|
||||
|
||||
play {
|
||||
val keyPath = System.getenv("SERVICE_ACCOUNT_KEY_PATH")
|
||||
if (keyPath != null) {
|
||||
serviceAccountCredentials.set(File(keyPath))
|
||||
}
|
||||
track.set(System.getenv("STORE_TRACK") ?: "internal")
|
||||
releaseStatus.set(ReleaseStatus.COMPLETED)
|
||||
}
|
||||
|
||||
dependencies {
|
||||
implementation("androidx.core:core-ktx:1.12.0")
|
||||
implementation("androidx.appcompat:appcompat:1.6.1")
|
||||
@@ -257,12 +259,18 @@ fun runGitCommand(command: List<String>): String {
|
||||
}
|
||||
|
||||
fun getGitVersion(): String {
|
||||
val gitVersion = runGitCommand(
|
||||
listOf(
|
||||
"git",
|
||||
"describe",
|
||||
"--always",
|
||||
"--long"
|
||||
)
|
||||
).replace(Regex("(-0)?-[^-]+$"), "")
|
||||
val versionName = if (System.getenv("GITHUB_ACTIONS") != null) {
|
||||
val gitTag = System.getenv("GIT_TAG_NAME") ?: ""
|
||||
gitTag
|
||||
System.getenv("GIT_TAG_NAME") ?: gitVersion
|
||||
} else {
|
||||
runGitCommand(listOf("git", "describe", "--always", "--long"))
|
||||
.replace(Regex("(-0)?-[^-]+$"), "")
|
||||
gitVersion
|
||||
}
|
||||
return versionName.ifEmpty { "0.0" }
|
||||
}
|
||||
|
||||
@@ -12,8 +12,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
<uses-feature android:name="android.hardware.vulkan.version" android:version="0x401000" android:required="true" />
|
||||
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_SPECIAL_USE" />
|
||||
<uses-permission android:name="android.permission.NFC" />
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
|
||||
|
||||
@@ -80,10 +78,6 @@ SPDX-License-Identifier: GPL-3.0-or-later
|
||||
android:resource="@xml/nfc_tech_filter" />
|
||||
</activity>
|
||||
|
||||
<service android:name="org.yuzu.yuzu_emu.utils.ForegroundService" android:foregroundServiceType="specialUse">
|
||||
<property android:name="android.app.PROPERTY_SPECIAL_USE_FGS_SUBTYPE" android:value="Keep emulation running in background"/>
|
||||
</service>
|
||||
|
||||
<provider
|
||||
android:name=".features.DocumentProvider"
|
||||
android:authorities="${applicationId}.user"
|
||||
|
||||
@@ -17,17 +17,6 @@ fun Context.getPublicFilesDir(): File = getExternalFilesDir(null) ?: filesDir
|
||||
|
||||
class YuzuApplication : Application() {
|
||||
private fun createNotificationChannels() {
|
||||
val emulationChannel = NotificationChannel(
|
||||
getString(R.string.emulation_notification_channel_id),
|
||||
getString(R.string.emulation_notification_channel_name),
|
||||
NotificationManager.IMPORTANCE_LOW
|
||||
)
|
||||
emulationChannel.description = getString(
|
||||
R.string.emulation_notification_channel_description
|
||||
)
|
||||
emulationChannel.setSound(null, null)
|
||||
emulationChannel.vibrationPattern = null
|
||||
|
||||
val noticeChannel = NotificationChannel(
|
||||
getString(R.string.notice_notification_channel_id),
|
||||
getString(R.string.notice_notification_channel_name),
|
||||
@@ -39,7 +28,6 @@ class YuzuApplication : Application() {
|
||||
// Register the channel with the system; you can't change the importance
|
||||
// or other notification behaviors after this
|
||||
val notificationManager = getSystemService(NotificationManager::class.java)
|
||||
notificationManager.createNotificationChannel(emulationChannel)
|
||||
notificationManager.createNotificationChannel(noticeChannel)
|
||||
}
|
||||
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
package org.yuzu.yuzu_emu.activities
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.app.Activity
|
||||
import android.app.PendingIntent
|
||||
import android.app.PictureInPictureParams
|
||||
import android.app.RemoteAction
|
||||
@@ -45,7 +44,6 @@ import org.yuzu.yuzu_emu.features.settings.model.IntSetting
|
||||
import org.yuzu.yuzu_emu.features.settings.model.Settings
|
||||
import org.yuzu.yuzu_emu.model.EmulationViewModel
|
||||
import org.yuzu.yuzu_emu.model.Game
|
||||
import org.yuzu.yuzu_emu.utils.ForegroundService
|
||||
import org.yuzu.yuzu_emu.utils.InputHandler
|
||||
import org.yuzu.yuzu_emu.utils.Log
|
||||
import org.yuzu.yuzu_emu.utils.MemoryUtil
|
||||
@@ -74,11 +72,6 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
|
||||
|
||||
private val emulationViewModel: EmulationViewModel by viewModels()
|
||||
|
||||
override fun onDestroy() {
|
||||
stopForegroundService(this)
|
||||
super.onDestroy()
|
||||
}
|
||||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
Log.gameLaunched = true
|
||||
ThemeHelper.setTheme(this)
|
||||
@@ -125,10 +118,6 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
|
||||
.apply()
|
||||
}
|
||||
}
|
||||
|
||||
// Start a foreground service to prevent the app from getting killed in the background
|
||||
val startIntent = Intent(this, ForegroundService::class.java)
|
||||
startForegroundService(startIntent)
|
||||
}
|
||||
|
||||
override fun onKeyDown(keyCode: Int, event: KeyEvent): Boolean {
|
||||
@@ -481,12 +470,6 @@ class EmulationActivity : AppCompatActivity(), SensorEventListener {
|
||||
activity.startActivity(launcher)
|
||||
}
|
||||
|
||||
fun stopForegroundService(activity: Activity) {
|
||||
val startIntent = Intent(activity, ForegroundService::class.java)
|
||||
startIntent.action = ForegroundService.ACTION_STOP
|
||||
activity.startForegroundService(startIntent)
|
||||
}
|
||||
|
||||
private fun areCoordinatesOutside(view: View?, x: Float, y: Float): Boolean {
|
||||
if (view == null) {
|
||||
return true
|
||||
|
||||
@@ -25,7 +25,8 @@ enum class BooleanSetting(override val key: String) : AbstractBooleanSetting {
|
||||
HAPTIC_FEEDBACK("haptic_feedback"),
|
||||
SHOW_PERFORMANCE_OVERLAY("show_performance_overlay"),
|
||||
SHOW_INPUT_OVERLAY("show_input_overlay"),
|
||||
TOUCHSCREEN("touchscreen");
|
||||
TOUCHSCREEN("touchscreen"),
|
||||
SHOW_THERMAL_OVERLAY("show_thermal_overlay");
|
||||
|
||||
override fun getBoolean(needsGlobal: Boolean): Boolean =
|
||||
NativeConfig.getBoolean(key, needsGlobal)
|
||||
|
||||
@@ -8,7 +8,6 @@ import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.view.ViewGroup.MarginLayoutParams
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.core.view.updatePadding
|
||||
@@ -27,6 +26,7 @@ import org.yuzu.yuzu_emu.R
|
||||
import org.yuzu.yuzu_emu.databinding.FragmentSettingsBinding
|
||||
import org.yuzu.yuzu_emu.features.settings.model.Settings
|
||||
import org.yuzu.yuzu_emu.model.SettingsViewModel
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
|
||||
class SettingsFragment : Fragment() {
|
||||
private lateinit var presenter: SettingsFragmentPresenter
|
||||
@@ -125,18 +125,10 @@ class SettingsFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpSettingsList = binding.listSettings.layoutParams as MarginLayoutParams
|
||||
mlpSettingsList.leftMargin = leftInsets
|
||||
mlpSettingsList.rightMargin = rightInsets
|
||||
binding.listSettings.layoutParams = mlpSettingsList
|
||||
binding.listSettings.updatePadding(
|
||||
bottom = barInsets.bottom
|
||||
)
|
||||
binding.listSettings.updateMargins(left = leftInsets, right = rightInsets)
|
||||
binding.listSettings.updatePadding(bottom = barInsets.bottom)
|
||||
|
||||
val mlpAppBar = binding.appbarSettings.layoutParams as MarginLayoutParams
|
||||
mlpAppBar.leftMargin = leftInsets
|
||||
mlpAppBar.rightMargin = rightInsets
|
||||
binding.appbarSettings.layoutParams = mlpAppBar
|
||||
binding.appbarSettings.updateMargins(left = leftInsets, right = rightInsets)
|
||||
windowInsets
|
||||
}
|
||||
}
|
||||
|
||||
@@ -13,7 +13,6 @@ import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import android.view.ViewGroup.MarginLayoutParams
|
||||
import android.widget.Toast
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
@@ -26,6 +25,7 @@ import org.yuzu.yuzu_emu.BuildConfig
|
||||
import org.yuzu.yuzu_emu.R
|
||||
import org.yuzu.yuzu_emu.databinding.FragmentAboutBinding
|
||||
import org.yuzu.yuzu_emu.model.HomeViewModel
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
|
||||
class AboutFragment : Fragment() {
|
||||
private var _binding: FragmentAboutBinding? = null
|
||||
@@ -114,15 +114,8 @@ class AboutFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpToolbar = binding.toolbarAbout.layoutParams as MarginLayoutParams
|
||||
mlpToolbar.leftMargin = leftInsets
|
||||
mlpToolbar.rightMargin = rightInsets
|
||||
binding.toolbarAbout.layoutParams = mlpToolbar
|
||||
|
||||
val mlpScrollAbout = binding.scrollAbout.layoutParams as MarginLayoutParams
|
||||
mlpScrollAbout.leftMargin = leftInsets
|
||||
mlpScrollAbout.rightMargin = rightInsets
|
||||
binding.scrollAbout.layoutParams = mlpScrollAbout
|
||||
binding.toolbarAbout.updateMargins(left = leftInsets, right = rightInsets)
|
||||
binding.scrollAbout.updateMargins(left = leftInsets, right = rightInsets)
|
||||
|
||||
binding.contentAbout.updatePadding(bottom = barInsets.bottom)
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@ import org.yuzu.yuzu_emu.model.AddonViewModel
|
||||
import org.yuzu.yuzu_emu.model.HomeViewModel
|
||||
import org.yuzu.yuzu_emu.utils.AddonUtil
|
||||
import org.yuzu.yuzu_emu.utils.FileUtil.copyFilesTo
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
import java.io.File
|
||||
|
||||
class AddonsFragment : Fragment() {
|
||||
@@ -202,27 +203,19 @@ class AddonsFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpToolbar = binding.toolbarAddons.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpToolbar.leftMargin = leftInsets
|
||||
mlpToolbar.rightMargin = rightInsets
|
||||
binding.toolbarAddons.layoutParams = mlpToolbar
|
||||
|
||||
val mlpAddonsList = binding.listAddons.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpAddonsList.leftMargin = leftInsets
|
||||
mlpAddonsList.rightMargin = rightInsets
|
||||
binding.listAddons.layoutParams = mlpAddonsList
|
||||
binding.toolbarAddons.updateMargins(left = leftInsets, right = rightInsets)
|
||||
binding.listAddons.updateMargins(left = leftInsets, right = rightInsets)
|
||||
binding.listAddons.updatePadding(
|
||||
bottom = barInsets.bottom +
|
||||
resources.getDimensionPixelSize(R.dimen.spacing_bottom_list_fab)
|
||||
)
|
||||
|
||||
val fabSpacing = resources.getDimensionPixelSize(R.dimen.spacing_fab)
|
||||
val mlpFab =
|
||||
binding.buttonInstall.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpFab.leftMargin = leftInsets + fabSpacing
|
||||
mlpFab.rightMargin = rightInsets + fabSpacing
|
||||
mlpFab.bottomMargin = barInsets.bottom + fabSpacing
|
||||
binding.buttonInstall.layoutParams = mlpFab
|
||||
binding.buttonInstall.updateMargins(
|
||||
left = leftInsets + fabSpacing,
|
||||
right = rightInsets + fabSpacing,
|
||||
bottom = barInsets.bottom + fabSpacing
|
||||
)
|
||||
|
||||
windowInsets
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ import org.yuzu.yuzu_emu.databinding.FragmentAppletLauncherBinding
|
||||
import org.yuzu.yuzu_emu.model.Applet
|
||||
import org.yuzu.yuzu_emu.model.AppletInfo
|
||||
import org.yuzu.yuzu_emu.model.HomeViewModel
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
|
||||
class AppletLauncherFragment : Fragment() {
|
||||
private var _binding: FragmentAppletLauncherBinding? = null
|
||||
@@ -95,16 +96,8 @@ class AppletLauncherFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpAppBar = binding.toolbarApplets.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpAppBar.leftMargin = leftInsets
|
||||
mlpAppBar.rightMargin = rightInsets
|
||||
binding.toolbarApplets.layoutParams = mlpAppBar
|
||||
|
||||
val mlpListApplets =
|
||||
binding.listApplets.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpListApplets.leftMargin = leftInsets
|
||||
mlpListApplets.rightMargin = rightInsets
|
||||
binding.listApplets.layoutParams = mlpListApplets
|
||||
binding.toolbarApplets.updateMargins(left = leftInsets, right = rightInsets)
|
||||
binding.listApplets.updateMargins(left = leftInsets, right = rightInsets)
|
||||
|
||||
binding.listApplets.updatePadding(bottom = barInsets.bottom)
|
||||
|
||||
|
||||
@@ -34,6 +34,7 @@ import org.yuzu.yuzu_emu.model.HomeViewModel
|
||||
import org.yuzu.yuzu_emu.utils.FileUtil
|
||||
import org.yuzu.yuzu_emu.utils.GpuDriverHelper
|
||||
import org.yuzu.yuzu_emu.utils.NativeConfig
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
import java.io.File
|
||||
import java.io.IOException
|
||||
|
||||
@@ -141,23 +142,15 @@ class DriverManagerFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpAppBar = binding.toolbarDrivers.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpAppBar.leftMargin = leftInsets
|
||||
mlpAppBar.rightMargin = rightInsets
|
||||
binding.toolbarDrivers.layoutParams = mlpAppBar
|
||||
|
||||
val mlplistDrivers = binding.listDrivers.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlplistDrivers.leftMargin = leftInsets
|
||||
mlplistDrivers.rightMargin = rightInsets
|
||||
binding.listDrivers.layoutParams = mlplistDrivers
|
||||
binding.toolbarDrivers.updateMargins(left = leftInsets, right = rightInsets)
|
||||
binding.listDrivers.updateMargins(left = leftInsets, right = rightInsets)
|
||||
|
||||
val fabSpacing = resources.getDimensionPixelSize(R.dimen.spacing_fab)
|
||||
val mlpFab =
|
||||
binding.buttonInstall.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpFab.leftMargin = leftInsets + fabSpacing
|
||||
mlpFab.rightMargin = rightInsets + fabSpacing
|
||||
mlpFab.bottomMargin = barInsets.bottom + fabSpacing
|
||||
binding.buttonInstall.layoutParams = mlpFab
|
||||
binding.buttonInstall.updateMargins(
|
||||
left = leftInsets + fabSpacing,
|
||||
right = rightInsets + fabSpacing,
|
||||
bottom = barInsets.bottom + fabSpacing
|
||||
)
|
||||
|
||||
binding.listDrivers.updatePadding(
|
||||
bottom = barInsets.bottom +
|
||||
|
||||
@@ -19,6 +19,7 @@ import com.google.android.material.transition.MaterialSharedAxis
|
||||
import org.yuzu.yuzu_emu.R
|
||||
import org.yuzu.yuzu_emu.databinding.FragmentEarlyAccessBinding
|
||||
import org.yuzu.yuzu_emu.model.HomeViewModel
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
|
||||
class EarlyAccessFragment : Fragment() {
|
||||
private var _binding: FragmentEarlyAccessBinding? = null
|
||||
@@ -73,10 +74,7 @@ class EarlyAccessFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpAppBar = binding.appbarEa.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpAppBar.leftMargin = leftInsets
|
||||
mlpAppBar.rightMargin = rightInsets
|
||||
binding.appbarEa.layoutParams = mlpAppBar
|
||||
binding.appbarEa.updateMargins(left = leftInsets, right = rightInsets)
|
||||
|
||||
binding.scrollEa.updatePadding(
|
||||
left = leftInsets,
|
||||
|
||||
@@ -13,6 +13,7 @@ import android.net.Uri
|
||||
import android.os.Bundle
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.os.PowerManager
|
||||
import android.os.SystemClock
|
||||
import android.view.*
|
||||
import android.widget.TextView
|
||||
@@ -23,6 +24,7 @@ import androidx.core.content.res.ResourcesCompat
|
||||
import androidx.core.graphics.Insets
|
||||
import androidx.core.view.ViewCompat
|
||||
import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.core.view.updatePadding
|
||||
import androidx.drawerlayout.widget.DrawerLayout
|
||||
import androidx.drawerlayout.widget.DrawerLayout.DrawerListener
|
||||
import androidx.fragment.app.Fragment
|
||||
@@ -38,7 +40,6 @@ import androidx.window.layout.WindowLayoutInfo
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import com.google.android.material.slider.Slider
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.flow.collect
|
||||
import kotlinx.coroutines.flow.collectLatest
|
||||
import kotlinx.coroutines.launch
|
||||
import org.yuzu.yuzu_emu.HomeNavigationDirections
|
||||
@@ -64,6 +65,7 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
private lateinit var emulationState: EmulationState
|
||||
private var emulationActivity: EmulationActivity? = null
|
||||
private var perfStatsUpdater: (() -> Unit)? = null
|
||||
private var thermalStatsUpdater: (() -> Unit)? = null
|
||||
|
||||
private var _binding: FragmentEmulationBinding? = null
|
||||
private val binding get() = _binding!!
|
||||
@@ -77,6 +79,8 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
|
||||
private var isInFoldableLayout = false
|
||||
|
||||
private lateinit var powerManager: PowerManager
|
||||
|
||||
override fun onAttach(context: Context) {
|
||||
super.onAttach(context)
|
||||
if (context is EmulationActivity) {
|
||||
@@ -102,6 +106,8 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
super.onCreate(savedInstanceState)
|
||||
updateOrientation()
|
||||
|
||||
powerManager = requireContext().getSystemService(Context.POWER_SERVICE) as PowerManager
|
||||
|
||||
val intentUri: Uri? = requireActivity().intent.data
|
||||
var intentGame: Game? = null
|
||||
if (intentUri != null) {
|
||||
@@ -394,8 +400,9 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
|
||||
emulationState.updateSurface()
|
||||
|
||||
// Setup overlay
|
||||
// Setup overlays
|
||||
updateShowFpsOverlay()
|
||||
updateThermalOverlay()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -553,6 +560,38 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
}
|
||||
}
|
||||
|
||||
private fun updateThermalOverlay() {
|
||||
if (BooleanSetting.SHOW_THERMAL_OVERLAY.getBoolean()) {
|
||||
thermalStatsUpdater = {
|
||||
if (emulationViewModel.emulationStarted.value &&
|
||||
!emulationViewModel.isEmulationStopping.value
|
||||
) {
|
||||
val thermalStatus = when (powerManager.currentThermalStatus) {
|
||||
PowerManager.THERMAL_STATUS_LIGHT -> "😥"
|
||||
PowerManager.THERMAL_STATUS_MODERATE -> "🥵"
|
||||
PowerManager.THERMAL_STATUS_SEVERE -> "🔥"
|
||||
PowerManager.THERMAL_STATUS_CRITICAL,
|
||||
PowerManager.THERMAL_STATUS_EMERGENCY,
|
||||
PowerManager.THERMAL_STATUS_SHUTDOWN -> "☢️"
|
||||
|
||||
else -> "🙂"
|
||||
}
|
||||
if (_binding != null) {
|
||||
binding.showThermalsText.text = thermalStatus
|
||||
}
|
||||
thermalStatsUpdateHandler.postDelayed(thermalStatsUpdater!!, 1000)
|
||||
}
|
||||
}
|
||||
thermalStatsUpdateHandler.post(thermalStatsUpdater!!)
|
||||
binding.showThermalsText.visibility = View.VISIBLE
|
||||
} else {
|
||||
if (thermalStatsUpdater != null) {
|
||||
thermalStatsUpdateHandler.removeCallbacks(thermalStatsUpdater!!)
|
||||
}
|
||||
binding.showThermalsText.visibility = View.GONE
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressLint("SourceLockedOrientationActivity")
|
||||
private fun updateOrientation() {
|
||||
emulationActivity?.let {
|
||||
@@ -641,6 +680,8 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
popup.menu.apply {
|
||||
findItem(R.id.menu_toggle_fps).isChecked =
|
||||
BooleanSetting.SHOW_PERFORMANCE_OVERLAY.getBoolean()
|
||||
findItem(R.id.thermal_indicator).isChecked =
|
||||
BooleanSetting.SHOW_THERMAL_OVERLAY.getBoolean()
|
||||
findItem(R.id.menu_rel_stick_center).isChecked =
|
||||
BooleanSetting.JOYSTICK_REL_CENTER.getBoolean()
|
||||
findItem(R.id.menu_dpad_slide).isChecked = BooleanSetting.DPAD_SLIDE.getBoolean()
|
||||
@@ -660,6 +701,13 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
true
|
||||
}
|
||||
|
||||
R.id.thermal_indicator -> {
|
||||
it.isChecked = !it.isChecked
|
||||
BooleanSetting.SHOW_THERMAL_OVERLAY.setBoolean(it.isChecked)
|
||||
updateThermalOverlay()
|
||||
true
|
||||
}
|
||||
|
||||
R.id.menu_edit_overlay -> {
|
||||
binding.drawerLayout.close()
|
||||
binding.surfaceInputOverlay.requestFocus()
|
||||
@@ -850,7 +898,7 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
right = cutInsets.right
|
||||
}
|
||||
|
||||
v.setPadding(left, cutInsets.top, right, 0)
|
||||
v.updatePadding(left = left, top = cutInsets.top, right = right)
|
||||
windowInsets
|
||||
}
|
||||
}
|
||||
@@ -1003,5 +1051,6 @@ class EmulationFragment : Fragment(), SurfaceHolder.Callback {
|
||||
|
||||
companion object {
|
||||
private val perfStatsUpdateHandler = Handler(Looper.myLooper()!!)
|
||||
private val thermalStatsUpdateHandler = Handler(Looper.myLooper()!!)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,6 +26,7 @@ import org.yuzu.yuzu_emu.databinding.FragmentFoldersBinding
|
||||
import org.yuzu.yuzu_emu.model.GamesViewModel
|
||||
import org.yuzu.yuzu_emu.model.HomeViewModel
|
||||
import org.yuzu.yuzu_emu.ui.main.MainActivity
|
||||
import org.yuzu.yuzu_emu.utils.ViewUtils.updateMargins
|
||||
|
||||
class GameFoldersFragment : Fragment() {
|
||||
private var _binding: FragmentFoldersBinding? = null
|
||||
@@ -100,23 +101,16 @@ class GameFoldersFragment : Fragment() {
|
||||
val leftInsets = barInsets.left + cutoutInsets.left
|
||||
val rightInsets = barInsets.right + cutoutInsets.right
|
||||
|
||||
val mlpToolbar = binding.toolbarFolders.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpToolbar.leftMargin = leftInsets
|
||||
mlpToolbar.rightMargin = rightInsets
|
||||
binding.toolbarFolders.layoutParams = mlpToolbar
|
||||
binding.toolbarFolders.updateMargins(left = leftInsets, right = rightInsets)
|
||||
|
||||
val fabSpacing = resources.getDimensionPixelSize(R.dimen.spacing_fab)
|
||||
val mlpFab =
|
||||
binding.buttonAdd.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpFab.leftMargin = leftInsets + fabSpacing
|
||||
mlpFab.rightMargin = rightInsets + fabSpacing
|
||||
mlpFab.bottomMargin = barInsets.bottom + fabSpacing
|
||||
binding.buttonAdd.layoutParams = mlpFab
|
||||
binding.buttonAdd.updateMargins(
|
||||
left = leftInsets + fabSpacing,
|
||||
right = rightInsets + fabSpacing,
|
||||
bottom = barInsets.bottom + fabSpacing
|
||||
)
|
||||
|
||||
val mlpListFolders = binding.listFolders.layoutParams as ViewGroup.MarginLayoutParams
|
||||
mlpListFolders.leftMargin = leftInsets
|
||||
mlpListFolders.rightMargin = rightInsets
|
||||
binding.listFolders.layoutParams = mlpListFolders
|
||||
binding.listFolders.updateMargins(left = leftInsets, right = rightInsets)
|
||||
|
||||
binding.listFolders.updatePadding(
|
||||
bottom = barInsets.bottom +
|
||||
|
||||