- def resizePiP(self, resize):
- w = int(self.size[0] * self.resize / 100)
- h = int(self.size[1] * self.resize / 100)
- self.pip.resize(w, h)
- self.resize = resize
+ # calculate offset from center
+ mx = (oldsize[0] - w) / 2
+ my = (oldsize[1] - h) / 2
+
+ self.size = (w, h)
+ # reclip, account for new center
+ self.moveRelative(x=mx, y=my)
+
+ def moveRelative(self, x=0, y=0):
+ self.pos = (clip(self.pos[0] + x, 0, MAX_X - self.size[0]), clip(self.pos[1] + y, 0, MAX_Y - self.size[1]))
+ self.setPiPPosition()