Merge pull request #1 from Flowdalic/flow

Add changes by Flow
This commit is contained in:
Paul Schaub 2018-11-08 15:26:57 +01:00 committed by GitHub
commit 347e0fe022
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 32 additions and 18 deletions

16
.gitignore vendored
View file

@ -1,8 +1,12 @@
.gradle/ /.gradle/
.idea/ /.idea/
*.iml /*.iml
*/out /build/
*/build/
out/ /out/
/.classpath
/.project
/.settings/
/bin/

View file

@ -3,3 +3,9 @@ of authenticity.
![Login Screen](assets/qr_omemo_login.png) ![Login Screen](assets/qr_omemo_login.png)
![Main Screen](assets/qr_omemo_main.png) ![Main Screen](assets/qr_omemo_main.png)
# Executing the application
```bash
gradle jfxRun
```

View file

@ -15,6 +15,7 @@ buildscript {
} }
allprojects { allprojects {
apply plugin: 'eclipse'
apply plugin: 'java' apply plugin: 'java'
apply plugin: 'javafx-gradle-plugin' apply plugin: 'javafx-gradle-plugin'
} }

View file

@ -1,6 +1,5 @@
package de.vanitasvitae.omemoqrgenerator; package de.vanitasvitae.omemoqrgenerator;
import javafx.event.EventHandler;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.scene.control.ListView; import javafx.scene.control.ListView;
import javafx.scene.input.ScrollEvent; import javafx.scene.input.ScrollEvent;

View file

@ -1,24 +1,29 @@
package de.vanitasvitae.omemoqrgenerator; package de.vanitasvitae.omemoqrgenerator;
import java.io.IOException;
import java.util.Map; import java.util.Map;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.jivesoftware.smack.SmackConfiguration; import org.jivesoftware.smack.SmackConfiguration;
import org.jivesoftware.smack.packet.Presence; import org.jivesoftware.smack.SmackException;
import org.jivesoftware.smack.XMPPException;
import org.jivesoftware.smack.tcp.XMPPTCPConnection; import org.jivesoftware.smack.tcp.XMPPTCPConnection;
import org.jivesoftware.smackx.omemo.exceptions.CorruptedOmemoKeyException;
import org.jivesoftware.smackx.omemo.internal.OmemoDevice; import org.jivesoftware.smackx.omemo.internal.OmemoDevice;
import org.jivesoftware.smackx.omemo.trust.OmemoFingerprint; import org.jivesoftware.smackx.omemo.trust.OmemoFingerprint;
import javafx.application.Application; import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList; import javafx.collections.ObservableList;
import javafx.fxml.FXMLLoader; import javafx.fxml.FXMLLoader;
import javafx.scene.Parent; import javafx.scene.Parent;
import javafx.scene.Scene; import javafx.scene.Scene;
import javafx.stage.Stage; import javafx.stage.Stage;
import org.jxmpp.jid.BareJid;
public class Main extends Application implements LoginCallback { public class Main extends Application implements LoginCallback {
private static final Logger LOGGER = Logger.getLogger(Main.class.getName());
private Stage stage; private Stage stage;
/* /*
@ -104,12 +109,13 @@ public class Main extends Application implements LoginCallback {
Map<OmemoDevice, OmemoFingerprint> fingerprints = Util.getFingerprints(connection); Map<OmemoDevice, OmemoFingerprint> fingerprints = Util.getFingerprints(connection);
ObservableList<OmemoIdentity> identities = repository.getIdentities(); ObservableList<OmemoIdentity> identities = repository.getIdentities();
LOGGER.info("Received " + identities.size() + " OMEMO identities");
for (OmemoDevice device : fingerprints.keySet()) { for (OmemoDevice device : fingerprints.keySet()) {
identities.addAll(new OmemoIdentity(device, fingerprints.get(device))); identities.addAll(new OmemoIdentity(device, fingerprints.get(device)));
System.out.println(Util.twoLinesFingerprint(fingerprints.get(device))); LOGGER.info(Util.twoLinesFingerprint(fingerprints.get(device)));
} }
connection.disconnect(new Presence(Presence.Type.unavailable)); connection.disconnect();
FXMLLoader loader = new FXMLLoader(); FXMLLoader loader = new FXMLLoader();
loader.setLocation(getClass().getResource("/fxml/qrdisplay.fxml")); loader.setLocation(getClass().getResource("/fxml/qrdisplay.fxml"));
@ -119,8 +125,8 @@ public class Main extends Application implements LoginCallback {
stage.setTitle("OMEMO QR-Code Generator"); stage.setTitle("OMEMO QR-Code Generator");
stage.setScene(scene); stage.setScene(scene);
stage.show(); stage.show();
} catch (Exception e) { } catch (InterruptedException | XMPPException | SmackException | IOException | CorruptedOmemoKeyException e) {
e.printStackTrace(); LOGGER.log(Level.SEVERE, "Exception in login", e);
} }
} }
} }

View file

@ -1,6 +1,7 @@
package de.vanitasvitae.omemoqrgenerator; package de.vanitasvitae.omemoqrgenerator;
import java.awt.*; import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage; import java.awt.image.BufferedImage;
import java.util.Iterator; import java.util.Iterator;
@ -8,13 +9,11 @@ import com.google.zxing.BarcodeFormat;
import com.google.zxing.WriterException; import com.google.zxing.WriterException;
import com.google.zxing.common.BitMatrix; import com.google.zxing.common.BitMatrix;
import com.google.zxing.qrcode.QRCodeWriter; import com.google.zxing.qrcode.QRCodeWriter;
import com.jfoenix.controls.JFXListView;
import javafx.collections.ListChangeListener; import javafx.collections.ListChangeListener;
import javafx.embed.swing.SwingFXUtils; import javafx.embed.swing.SwingFXUtils;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.scene.control.ListView; import javafx.scene.control.ListView;
import javafx.scene.image.ImageView; import javafx.scene.image.ImageView;
import javafx.scene.layout.GridPane;
public class QrDisplayController { public class QrDisplayController {

View file

@ -20,7 +20,6 @@ import org.jivesoftware.smackx.pubsub.PayloadItem;
import org.jivesoftware.smackx.pubsub.PubSubException; import org.jivesoftware.smackx.pubsub.PubSubException;
import org.jivesoftware.smackx.pubsub.PubSubManager; import org.jivesoftware.smackx.pubsub.PubSubManager;
import org.bouncycastle.util.Strings;
import org.jxmpp.jid.BareJid; import org.jxmpp.jid.BareJid;
public class Util { public class Util {