mirror of
https://github.com/SteamDeckHomebrew/decky-frontend-lib.git
synced 2026-05-22 19:08:46 +02:00
Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
edcc43a6ee | ||
|
|
9723854ddc | ||
|
|
7501817b76 | ||
|
|
4affd4aaec |
14
CHANGELOG.md
14
CHANGELOG.md
@@ -1,3 +1,17 @@
|
||||
## [3.18.10](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.18.9...v3.18.10) (2023-01-17)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **SuspensefulImage:** fix changing src ([9723854](https://github.com/SteamDeckHomebrew/decky-frontend-lib/commit/9723854ddca53d7708e1effbddec9e5ead22d5de))
|
||||
|
||||
## [3.18.9](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.18.8...v3.18.9) (2023-01-16)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **Navigation:** fix on stable ([4affd4a](https://github.com/SteamDeckHomebrew/decky-frontend-lib/commit/4affd4aaec088f01d0f30af48cb4daa34acf26b1))
|
||||
|
||||
## [3.18.8](https://github.com/SteamDeckHomebrew/decky-frontend-lib/compare/v3.18.7...v3.18.8) (2023-01-16)
|
||||
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "decky-frontend-lib",
|
||||
"version": "3.18.8",
|
||||
"version": "3.18.10",
|
||||
"description": "A library for building decky plugins",
|
||||
"main": "dist/index.js",
|
||||
"types": "dist/index.d.ts",
|
||||
|
||||
@@ -13,6 +13,8 @@ export const SuspensefulImage: FC<SuspensefulImageProps> = (props) => {
|
||||
const [error, setError] = useState(false);
|
||||
|
||||
useEffect(() => {
|
||||
setLoading(true);
|
||||
setError(false);
|
||||
const img = new Image();
|
||||
img.src = props.src || '';
|
||||
img.addEventListener('load', () => {
|
||||
@@ -21,7 +23,7 @@ export const SuspensefulImage: FC<SuspensefulImageProps> = (props) => {
|
||||
img.addEventListener('error', () => {
|
||||
setError(true);
|
||||
});
|
||||
}, []);
|
||||
}, [props.src]);
|
||||
|
||||
return loading ? (
|
||||
<div
|
||||
|
||||
@@ -130,29 +130,29 @@ export let Navigation = {} as Navigation;
|
||||
|
||||
try {
|
||||
(async () => {
|
||||
// With how much Valve is changing these, you really shouldn't use them directly, instead see Navigation
|
||||
let InternalNavigators: any;
|
||||
function initInternalNavigators() {
|
||||
try {
|
||||
InternalNavigators = findModuleChild((m: any) => {
|
||||
if (typeof m !== 'object') return undefined;
|
||||
for (let prop in m) {
|
||||
if (m[prop]?.GetNavigator) {
|
||||
return m[prop];
|
||||
let InternalNavigators: any = {};
|
||||
if (!Router.NavigateToAppProperties || (Router as unknown as any).deckyShim) {
|
||||
function initInternalNavigators() {
|
||||
try {
|
||||
InternalNavigators = findModuleChild((m: any) => {
|
||||
if (typeof m !== 'object') return undefined;
|
||||
for (let prop in m) {
|
||||
if (m[prop]?.GetNavigator) {
|
||||
return m[prop];
|
||||
}
|
||||
}
|
||||
}
|
||||
})?.GetNavigator();
|
||||
} catch (e) {
|
||||
console.error('[DFL:Router]: Failed to init internal navigators, trying again');
|
||||
})?.GetNavigator();
|
||||
} catch (e) {
|
||||
console.error('[DFL:Router]: Failed to init internal navigators, trying again');
|
||||
}
|
||||
}
|
||||
initInternalNavigators();
|
||||
while (!InternalNavigators?.AppProperties) {
|
||||
console.log('[DFL:Router]: Trying to init internal navigators again');
|
||||
await sleep(100);
|
||||
initInternalNavigators();
|
||||
}
|
||||
}
|
||||
initInternalNavigators();
|
||||
while (!InternalNavigators?.AppProperties) {
|
||||
console.log('[DFL:Router]: Trying to init internal navigators again');
|
||||
await sleep(100);
|
||||
initInternalNavigators();
|
||||
}
|
||||
console.log("got navigators", InternalNavigators)
|
||||
const newNavigation = {
|
||||
Navigate: Router.Navigate.bind(Router),
|
||||
NavigateBack: Router.WindowStore?.GamepadUIMainWindowInstance?.NavigateBack.bind(
|
||||
|
||||
Reference in New Issue
Block a user