Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
S
Stable Diffusion Webui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
novelai-storage
Stable Diffusion Webui
Commits
40dc0132
Commit
40dc0132
authored
Mar 13, 2023
by
unknown
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
modularize
parent
bfa14db2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
40 additions
and
31 deletions
+40
-31
javascript/imageviewer.js
javascript/imageviewer.js
+4
-31
javascript/imageviewerGamepad.js
javascript/imageviewerGamepad.js
+36
-0
No files found.
javascript/imageviewer.js
View file @
40dc0132
...
...
@@ -220,37 +220,10 @@ document.addEventListener("DOMContentLoaded", function() {
modal
.
tabIndex
=
0
modal
.
addEventListener
(
'
keydown
'
,
modalKeyHandler
,
true
)
let
delay
=
350
//ms
window
.
addEventListener
(
'
gamepadconnected
'
,
(
e
)
=>
{
console
.
log
(
"
Gamepad connected!
"
)
const
gamepad
=
e
.
gamepad
;
setInterval
(()
=>
{
const
xValue
=
gamepad
.
axes
[
0
].
toFixed
(
2
);
if
(
xValue
<
-
0.3
)
{
modalPrevImage
(
e
);
}
else
if
(
xValue
>
0.3
)
{
modalNextImage
(
e
);
}
},
delay
);
});
let
isScrolling
=
false
;
window
.
addEventListener
(
'
wheel
'
,
(
e
)
=>
{
if
(
isScrolling
)
return
;
isScrolling
=
true
;
if
(
e
.
deltaX
<=
-
0.6
)
{
modalPrevImage
(
e
);
}
else
if
(
e
.
deltaX
>=
0.6
)
{
modalNextImage
(
e
);
}
setTimeout
(()
=>
{
isScrolling
=
false
;
},
delay
);
});
// detect gamepads and enable related functionality
let
gamepadScript
=
document
.
createElement
(
'
script
'
);
gamepadScript
.
src
=
'
imageviewerGamepad.js
'
;
document
.
body
.
appendChild
(
gamepadScript
);
const
modalControls
=
document
.
createElement
(
'
div
'
)
modalControls
.
className
=
'
modalControls gradio-container
'
;
...
...
javascript/imageviewerGamepad.js
0 → 100644
View file @
40dc0132
let
delay
=
350
//ms
window
.
addEventListener
(
'
gamepadconnected
'
,
(
e
)
=>
{
console
.
log
(
"
Gamepad connected!
"
)
const
gamepad
=
e
.
gamepad
;
setInterval
(()
=>
{
const
xValue
=
gamepad
.
axes
[
0
].
toFixed
(
2
);
if
(
xValue
<
-
0.3
)
{
modalPrevImage
(
e
);
}
else
if
(
xValue
>
0.3
)
{
modalNextImage
(
e
);
}
},
delay
);
});
/*
Primarily for vr controller type pointer devices.
I use the wheel event because there's currently no way to do it properly with web xr.
*/
let
isScrolling
=
false
;
window
.
addEventListener
(
'
wheel
'
,
(
e
)
=>
{
if
(
isScrolling
)
return
;
isScrolling
=
true
;
if
(
e
.
deltaX
<=
-
0.6
)
{
modalPrevImage
(
e
);
}
else
if
(
e
.
deltaX
>=
0.6
)
{
modalNextImage
(
e
);
}
setTimeout
(()
=>
{
isScrolling
=
false
;
},
delay
);
});
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment