This repository was archived by the owner on Mar 26, 2024. It is now read-only.
File tree Expand file tree Collapse file tree
src/main/kotlin/org/jetbrains/projector/server Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -26,7 +26,7 @@ intellijPluginVersion=1.3.0
2626javassistVersion =3.28.0-GA
2727kotlinVersion =1.6.10
2828mockitoKotlinVersion =4.0.0
29- projectorClientVersion =aeaf9989
29+ projectorClientVersion =fe7fcb00
3030projectorClientGroup =com.github.JetBrains.projector-client
3131targetJvm =11
3232jetbrainsMonoVersion =2.242
Original file line number Diff line number Diff line change 11# Unreleased
22
33## Fixed
4+
45- PRJ-691 PRJ-750 PRJ-779 Fix JetBrains account login
56- Infinite transport initialization on relay failure
67
78## Changed
9+
810- Switch to JS IR compilation for projector-client-web
911
12+ ## Added
13+
14+ - Status endpoint
15+
1016# 1.6.0
1117
1218## Added
Original file line number Diff line number Diff line change @@ -335,7 +335,13 @@ class ProjectorServer private constructor(
335335 return allEvents
336336 }
337337
338+ private var lastUserActionTimeStampMs: Long = 0L
339+
338340 private fun processMessage (clientSettings : ReadyClientSettings , message : ClientEvent ) {
341+ if (message is ClientUserEvent ) {
342+ lastUserActionTimeStampMs = System .currentTimeMillis()
343+ }
344+
339345 if (
340346 ! clientSettings.setUpClientData.hasWriteAccess &&
341347 message !is ClientRequestImageDataEvent &&
@@ -700,8 +706,9 @@ class ProjectorServer private constructor(
700706 fun start () {
701707 updateThread = createUpdateThread()
702708 caretInfoUpdater.start()
709+ lastUserActionTimeStampMs = System .currentTimeMillis()
703710
704- WebsocketServer .createTransportBuilders().forEach {
711+ WebsocketServer .createTransportBuilders(getLastUserActionTimeStampMs = ::lastUserActionTimeStampMs ).forEach {
705712 addTransport(it.attachDefaultServerEventHandlers(clientEventHandler).build())
706713 }
707714 }
@@ -733,6 +740,7 @@ class ProjectorServer private constructor(
733740 fun stop (timeout : Int = 0) {
734741 transports.forEach { it.stop(timeout) }
735742 transports.clear()
743+ lastUserActionTimeStampMs = 0L
736744 caretInfoUpdater.stop()
737745
738746 if (::updateThread.isInitialized) {
Original file line number Diff line number Diff line change @@ -35,7 +35,7 @@ import org.jetbrains.projector.server.service.ProjectorImageCacher
3535import org.jetbrains.projector.util.logging.Logger
3636
3737object WebsocketServer {
38- internal fun createTransportBuilders (): List <WsTransportBuilder > {
38+ internal fun createTransportBuilders (getLastUserActionTimeStampMs : () -> Long ): List <WsTransportBuilder > {
3939 val builders = arrayListOf<WsTransportBuilder >()
4040
4141 val relayUrl = getOption(RELAY_PROPERTY_NAME )
@@ -68,6 +68,7 @@ object WebsocketServer {
6868 )
6969 }
7070 }
71+ serverBuilder.getLastUserActionTimeStampMs = getLastUserActionTimeStampMs
7172
7273 builders.add(serverBuilder)
7374 }
You can’t perform that action at this time.
0 commit comments