summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java
diff options
context:
space:
mode:
authorSimon Rettberg2017-03-03 12:08:54 +0100
committerSimon Rettberg2017-03-03 12:08:54 +0100
commitf1a056e7fed96bdaf27c154f47e17efb1eb6a9ab (patch)
tree9fe69322ad39796b312341e0b693f9aed5b3de30 /dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java
parent[server] Implement getSupportedFeatures() (diff)
downloadtutor-module-f1a056e7fed96bdaf27c154f47e17efb1eb6a9ab.tar.gz
tutor-module-f1a056e7fed96bdaf27c154f47e17efb1eb6a9ab.tar.xz
tutor-module-f1a056e7fed96bdaf27c154f47e17efb1eb6a9ab.zip
[client] Don't update server storage space too often if user is inactive
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java
index 2421bad2..f7f99884 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/Gui.java
@@ -1,5 +1,6 @@
package org.openslx.dozmod.gui;
+import java.awt.AWTEvent;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Frame;
@@ -11,6 +12,7 @@ import java.awt.Point;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.Window;
+import java.awt.event.AWTEventListener;
import java.lang.reflect.InvocationTargetException;
import java.util.concurrent.atomic.AtomicReference;
@@ -29,6 +31,17 @@ import org.openslx.util.QuickTimer;
public class Gui {
private static final Logger LOGGER = Logger.getLogger(Gui.class);
+
+ private static long lastUserActivity = System.currentTimeMillis();
+
+ static {
+ Toolkit.getDefaultToolkit().addAWTEventListener(new AWTEventListener() {
+ @Override
+ public void eventDispatched(AWTEvent event) {
+ lastUserActivity = System.currentTimeMillis();
+ }
+ }, AWTEvent.MOUSE_EVENT_MASK | AWTEvent.KEY_EVENT_MASK);
+ }
private static Rectangle clientArea(GraphicsDevice gd) {
Insets inset = Toolkit.getDefaultToolkit().getScreenInsets(gd.getDefaultConfiguration());
@@ -349,5 +362,13 @@ public class Gui {
}
});
}
+
+ /**
+ * Get last user activity timestamp.
+ * This considers mouse clicks and key presses.
+ */
+ public static long getLastUserActivityMillis() {
+ return lastUserActivity;
+ }
}