diff src/org/tn5250j/framework/tn5250/tnvt.java @ 424:09c1d3aae3f0

updateDirty before testChanged, try to eliminate sending duplicate screenChanged to the monitor
author Carl Byington <carl@five-ten-sg.com>
date Fri, 31 Oct 2014 12:40:09 -0700
parents 12b2a3a35afe
children
line wrap: on
line diff
--- a/src/org/tn5250j/framework/tn5250/tnvt.java	Fri Oct 31 08:58:00 2014 -0700
+++ b/src/org/tn5250j/framework/tn5250/tnvt.java	Fri Oct 31 12:40:09 2014 -0700
@@ -167,7 +167,6 @@
     private boolean pendingUnlock = false;
     private boolean[] dataIncluded;
     protected ICodePage codePage;
-    private boolean firstScreen;
     private String sslType;
     private WTDSFParser sfParser;
     private TerminalBridge bridge;
@@ -362,8 +361,7 @@
 
             if (bout != null) bout.close();
 
-            connected   = false;
-            firstScreen = false;
+            connected  = false;
             // WVL - LDC : TR.000345 : properly disconnect and clear screen
             // Is this the right place to set screen realestate on disconnect?
             //controller.getScreen().clearAll();
@@ -821,6 +819,7 @@
             screen52.getOIA().setInputInhibited(ScreenOIA.INPUTINHIBITED_NOTINHIBITED,
                                                 ScreenOIA.OIA_LEVEL_INPUT_INHIBITED);
         invited = true;
+        screen52.updateDirty();
         buffer.testChanged();
     }
 
@@ -972,6 +971,7 @@
                 Object e = dsq.take();
 
                 if ((e instanceof Integer) && ((Integer)e == 0)) {
+                    screen52.updateDirty();
                     buffer.testChanged();
                     continue;
                 };
@@ -1011,12 +1011,6 @@
                     Log.d(TAG, "Put/Get Operation");
                     parseIncoming();
                     setInvited();
-
-                    if (!firstScreen) {
-                        firstScreen = true;
-                        //controller.fireSessionChanged(TN5250jConstants.STATE_CONNECTED);
-                    }
-
                     break;
 
                 case 4: