#113: Moving a layer with a parent causing crash, another try 4.x-dev

Mon, 24 Feb 2020 22:24:39 +0200

author
cemkalyoncu
date
Mon, 24 Feb 2020 22:24:39 +0200
branch
4.x-dev
changeset 1354
c3939ce7e50a
parent 1353
3be35aeb382b
child 1355
09246ed61298

#113: Moving a layer with a parent causing crash, another try
#110: Numpad characters now generate related char events

Source/Gorgon/Graphics/Layer.h file | annotate | diff | comparison | revisions
Source/Gorgon/Layer.h file | annotate | diff | comparison | revisions
Source/Gorgon/WindowManager/X11/Input.cpp file | annotate | diff | comparison | revisions
--- a/Source/Gorgon/Graphics/Layer.h	Mon Feb 24 21:51:12 2020 +0200
+++ b/Source/Gorgon/Graphics/Layer.h	Mon Feb 24 22:24:39 2020 +0200
@@ -226,13 +226,13 @@
             }
             
             if(myparent) {
-                parent->Remove(this);
-                parent->Insert(other, myind);
+                myparent->Remove(this);
+                myparent->Insert(other, myind);
             }
             
             if(otherparent) {
-                other.parent->Remove(other);
-                other.parent->Insert(this, otherind);
+                otherparent->Remove(other);
+                otherparent->Insert(this, otherind);
             }
         }
 
--- a/Source/Gorgon/Layer.h	Mon Feb 24 21:51:12 2020 +0200
+++ b/Source/Gorgon/Layer.h	Mon Feb 24 22:24:39 2020 +0200
@@ -153,13 +153,13 @@
             }
             
             if(myparent) {
-                parent->Remove(this);
-                parent->Insert(other, myind);
+                myparent->Remove(this);
+                myparent->Insert(other, myind);
             }
             
             if(otherparent) {
-                other.parent->Remove(other);
-                other.parent->Insert(this, otherind);
+                otherparent->Remove(other);
+                otherparent->Insert(this, otherind);
             }
 		}
 
--- a/Source/Gorgon/WindowManager/X11/Input.cpp	Mon Feb 24 21:51:12 2020 +0200
+++ b/Source/Gorgon/WindowManager/X11/Input.cpp	Mon Feb 24 22:24:39 2020 +0200
@@ -16,6 +16,10 @@
     /* also check for directly encoded 24-bit UCS characters */
     if ((keysym & 0xff000000) == 0x01000000)
         return keysym & 0x00ffffff;
+    
+    /* checkfor numpad */
+    if (keysym > 0xff80 && keysym < 0xffb9)
+        return keysym - 0xff80;
 
     /* binary search in table */
     while (max >= min) {

mercurial