Graphics class questions

Hey,
I have two questions about drawing shapes in action script 3.0, using graphics class (flash.display.Graphics):
Question 1.
When I draw some more complicated shape consisted of a few simpler shapes (i.e. two circles), and the shapes overlaps, the overlapped region is inverted (is rendered as a "hole"). Is there any way to avoid that?
This is simple example of this behaviour:
var oClip : MovieClip = new MovieClip();
oClip.graphics.beginFill( 0x000000, 0.5 );
oClip.graphics.drawCircle( 150, 200, 70 );
oClip.graphics.drawCircle( 250, 200, 100 );
oClip.graphics.endFill();
this.addChild( oClip );
I know,I can do it using separate beginFill/endFill sections for each circle:
var oClip : MovieClip = new MovieClip();
oClip.graphics.beginFill( 0x000000, 0.5 );
oClip.graphics.drawCircle( 150, 200, 70 );
oClip.graphics.endFill();
oClip.graphics.beginFill( 0x000000, 0.5 );
oClip.graphics.drawCircle( 250, 200, 100 );
oClip.graphics.endFill();
this.addChild( oClip );
but then when I use alpha blending, the shapes are blended separatelly. Unfortunatelly, this is not correct for that what I want to do.
I need to draw one beginFill/endFill session but without "holes" in the final shape, is it possible?
Question 2.
Is there an action script counterpart of the Flash menu option: Modify->Break Apart ?
Many thanks for any help.

I don't think there is going to be any easy way to do this. But you might want to look at the drawPath command. It allows you to set the winding-rule for the drawn shape and may help.
Notice the star in the example code goes from filled to not filled and it doesn't show overlap either....

Similar Messages

  • Information about Graphics class

    how will I be able to see the source code of the graphics class.

    As far as I can see there's no ByteArray class in the standard API.
    There are java.io.ByteArrayInputStream and java.io.ByteArrayOutputStream objects, and also there's java.util.BitSet.
    The syntax for them is the same as for any other part of the language. You probably mean the API. The API is in fact well-documented, just like most of the API.
    You don't need to import any package. You do need to import the classes or just refer to them with their full name (including package).
    All these things are determined from reading the documentation.
    Do you have any specific questions?

  • Return an Image from a subclass to a graphics class

    Hello
    I'm wondering how to return an Image generated by one class to a class which works as a graphics class. The graphics class is run from a main class. Let me make up a schedule:
    Image-generator return Image -> graphics class paint
    I have tried just making an Image and using the getGraphics to connect a graphics object to it, but it doesn't seem to work.
    Thanks in advance

    Okay, here are the pieces of code we use. (Comments are in Swedish but they are barely relevant, and explain merely basically what is happening in the program)
    The applet is compilable, but there is a nullpointerexception in Elefanträknaren, at getGraphics(). Believe me, I have tried finding the solution to this already.
    Spelet (main method)
    import java.applet.*;
    import java.awt.*;
    public class Spelet extends Applet
         /*Elefanträknaren testerna;*/
         Ritaren ritarN;
         Graphics g;
         public void init()
              /*testerna = new Elefanträknaren();*/
              ritarN = new Ritaren(g, getSize().width, getSize().height);
              setLayout(new GridLayout(1, 1));
              add(ritarN);
         public void start()
              ritarN.startaTråd();
         public void stop()
              ritarN.stoppaTråd();
         public void update(Graphics g)
              paint(g);
    }Ritaren (graphics object)
    import java.awt.*;
    public class Ritaren extends Panel implements Runnable
         Elefanträknaren e;
         Graphics g;
         int bredd, höjd;
         //Trådobjekt
         Thread tråd;
         public Ritaren(Graphics g, int bredd, int höjd)
              this.bredd = bredd;
              this.höjd = höjd;
              e = new Elefanträknaren(bredd, höjd);
         public void startaTråd()
              if( tråd == null )
                   tråd = new Thread(this); //Skapa tråden
                   tråd.start(); //Kör igång
                   e.startaTråd();
         public void stoppaTråd()
              if( tråd != null )
                   tråd.interrupt();
                   tråd = null;
         public void paint(Graphics g)
              g.drawImage(e.getSpökbilden(), 0, 0, this);
         public void update(Graphics g)
              paint(g);
         public void run()
              while( tråd != null )
                   repaint();
                   try
                        Thread.sleep(33);
                   catch(Exception e){}
    }Elefanträknaren (class generating the Image)
    import java.awt.*;
    import java.util.*;
    import java.awt.image.BufferedImage;
    import javax.swing.ImageIcon;
    public class Elefanträknaren extends Panel implements Runnable
         //Vektorn som innehåller alla Elefant-klasser
         private Vector elefanterna;
         //Ritobjektet för den dubbelbuffrade bilden
         private Graphics gx;
         //Bildobjektet för dubbelbuffringen
         private Image spökbilden;
         private int bredd, höjd;
         //Trådvariabeln
         private Thread tråd;
         //Rörelsen uppdateras 30 ggr/s. RÄKNARE håller koll på när en elefant ska läggas till (efter 30 st 30-delar = 1 ggr/s)
         int RÄKNARE = 30;
         int ÄNDRING = RÄKNARE;
         //DELAY betecknar delayen mellan två bilder/frames. 33 ms delay = 30 FPS
         int DELAY = 33;
         //Konstruktor
         public Elefanträknaren(int bredd, int höjd)
              elefanterna = new Vector();
              this.bredd = bredd;
              this.höjd = höjd;
         //Kör igång tråden/ge elefanterna liv
         public void startaTråd()
              if( tråd == null )
                   tråd = new Thread(this); //Skapa tråden
                   tråd.start(); //Kör igång
                   //Dubbelbuffringen initieras - detta måste ligga i startaTråd()
                   //spökbilden = new BufferedImage(bredd, höjd, BufferedImage.TYPE_INT_ARGB);
                   spökbilden = createImage(bredd, höjd);
                   gx = spökbilden.getGraphics();
         //Stoppa tråden/döda elefanterna
         public void stoppaTråd()
              if( tråd != null )
                   tråd.interrupt();
                   tråd = null;
         //Lägg till en elefant i vektorn
         private void läggTillElefant(Elefant e)
              elefanterna.add(e); //Lägg till en Elefant som objekt i vektorn
              Elefant temp = (Elefant)     elefanterna.get(elefanterna.size()-1);
              temp.startaTråd(); //Starta Elefantens tråd - ge Elefanten liv
         //Sätter ihop bilden som ska sickas till Ritaren
         public void uppdaterarN()
              //Rensa skärmen från den förra bilden
              gx.fillRect(0, 0, bredd, höjd);
              for( int i = 0; i < elefanterna.size(); i++ )
                   Elefant temp = (Elefant) elefanterna.get(i);
                   gx.drawImage(temp.getBild(), temp.getX(), temp.getY(), null);
         public Image getSpökbilden()
              return spökbilden;
         //Tråd-loopen
         public void run()
              while( tråd != null )
                   RÄKNARE++;
                   if( RÄKNARE >= ÄNDRING )
                        läggTillElefant(new Elefant(11, 50, 900));
                        RÄKNARE = 0;
                   uppdaterarN();
                   //repaint();
                   try
                        Thread.sleep(DELAY);
                   catch(Exception e){}
    }Elefant (a class which Elefanträknaren turns into an Image:
    import java.awt.*;
    import java.util.*;
    import javax.swing.ImageIcon;
    public class Elefant extends Panel implements Runnable
         private int x, y; //Elefantens koordinater
         private int hälsa; //Elefantens hälsa
         private int RÖRELSESTEG = 10;//Antal pixlar elefanten ska röra sig i sidled
         private int DELAY;
         //Animation
         private Vector bilderna = new Vector();
         private Vector bilderna2 = new Vector();
         private int fas; //Delen av animationen som ska visas
         private boolean framåt;
         //Tråddelen
         private Thread tråd;
         public Elefant(int x, int y, int hastighet)
              this.x = x;
              this.y = y;
              DELAY = 1000 - hastighet;
              hälsa = 100;
              framåt = true;
              fas = 0; //Nollställ fasen
              //Få fram bildernas namn
              for( int i = 0; i <= 5; i++ )
                   Image temp = new ImageIcon("Z:\\Projektet\\gamal\\Projektet\\Mappen\\mediat\\png\\jumbo" + i + ".png").getImage();
                   bilderna.add(temp);
                   Image temp2 = new ImageIcon("Z:\\Projektet\\gamal\\Projektet\\Mappen\\mediat\\png\\jumbo" + i + "r.png").getImage();
                   bilderna2.add(temp2);
         //get-variabler
         public int getX() { return x; }
         public int getY() { return y; }
         //Kör igång tråden/ge elefanten liv
         public void startaTråd()
              if( tråd == null )
                   tråd = new Thread(this); //Skapa tråden
                   tråd.start(); //Kör igång
         //Rör elefanten i sidled
         private void rörelse()
              //Animering
              if( fas < 5 ) fas++;
              else     fas = 0;
              //Flytta ner elefanten när den når en av spelets kanter
              if( x >= 800 || x <= 10 ) y += 85;
              //Kontrollera riktning
              if( x >= 800 ) framåt = false;
              else if( x <= 10 ) framåt = true;
              //Positionering
              if( framåt ) x += RÖRELSESTEG;
              else x -= RÖRELSESTEG;
         //Hämtar den aktuella bilden, och returnerar den
         public Image getBild()
              Image temp;
              if( framåt ) temp = (Image) bilderna.get(fas);
              else temp = (Image) bilderna2.get(fas);
              return temp;
         /* Tråd-hantering */
         //Stoppa tråden/döda elefanten
         public void stoppaTråd()
              if( tråd != null )
                   tråd.interrupt();
                   tråd = null;
         //Körs när elefanten är vid liv
         public void run()
              while( tråd != null )
                   rörelse();
                   try
                        Thread.sleep(DELAY);
                   catch(Exception e){}
    }

  • Are methods in the Graphics class Thread Safe

    Can methods from the Graphics class (.e.g. drawImage(), drawString(), ect..) be called from any thread? In other words, can two threads that refer to the same Graphics object step on each other methods calls?
    TIA,
    DB
    Edited by: Darth_Bane on Apr 27, 2009 1:44 PM

    No,
    They are GUI activities so you should call them from the Swing Thread ( Event Disptach Thread)
    Now for the JComponent the following are thread safe:
    repaint(), revalidate, invalidate which can be called from any thread.
    Also the listener list can be modified from any thread addListenerXX or removeListenerXX where XX is ListenerType
    Regards,
    Alan Mehio
    London, UK

  • Newbie help needed w/Graphics class!

    Hi everyone,
    I'm stuck on something I know is very simple to do, but I can't seem to find the right combination. I have a derived class that draws a circle using the graphics class. I'm getting compilation errors when I try to set the color and draw the circle. I have looked thru these forums as well as the API. Below is my code. Any pointers would be highly appreciated!
    import java.awt.Graphics;
    public class SmartCircle extends SmartShape
    SmartCircle(int first, int second, int third, Color c)
    super(first, second, third, c);
    public void draw(Graphics g)
    setColor(Color c);
    fillOval(first, second, size, size);
    }

    Here is SmartShape. It is located in the same directory as SmartCircle, so therefore doesn't need to be imported, correct?
    public abstract class SmartShape
    //define instance variables
    protected int positionX, positionY, size;
    protected Color theColor;
    public SmartShape()
         //initialize variables
         positionX = 20;
         positionY = 20;
         theColor = Color.white;
    public SmartShape(int first, int second, int third, Color c)
         if (first >= 0)
         positionX = first;
         else
         positionX = 0;
         if (second >= 0)
         positionY = second;
         else
         positionY = 0;
         if (third >= 0)
         size = third;
         else
         size = 0;
         theColor = c;
    public abstract void draw(Graphics g);
    Hope that helps!
    Melissa

  • CDR-17066 RON cannot find java EWT graphics classes

    Hello,
    I am evaluating Oracle SCM. Everything's going great, except I am unable to use the Version History or Version Events. When I try, I get an error:
    "CDR-17066: RON cannot find java EWT graphics classes"
    The action it recommends is to check the registry or environment variable JVM_CLASSPATH_RON, and make sure it points to the ewt jar.
    I found a jar called ewt3.jar in my oracle/jlib directory. There was no environmental variable called JVM_CLASSPATH_RON, so I created one and set it to that jar. But I'm still getting the same error.
    Any help would be appreciated. Thank you.

    Hi,
    this error message is rather strange: I checked in our knwoledge base, but you seem to be the first one having this issue!
    I had a look to my registry and indeed I couldn't find the variable JVM_CLASSPATH_RON.
    I suspect that this variable was superseded by another one (JVM_CLASSPATH_DEFAULT_THIN_JDBC ?).
    I checked for all variables including ewt and found the following:
    . FORMS90_CLASSPATH (<Home>\jlib\ewt3.jar)
    . FORMS90_BUILDER_CLASSPATH (<Home>\jlib\ewt3.jar)
    . JVM_CLASSPATH_DEFAULT_THIN_JDBC (<Home>\jlib\ewt4.jar)
    FORMS90_... variables are not used by the Version History and Version Event Viewers, but JVM_CLASSPATH_DEFAULT_THIN_JDBC is.
    I removed the entry <Home>\jlib\ewt4.jar from JVM_CLASSPATH_DEFAULT_THIN_JDBC, and then I could reproduce your issue.
    So could you check the content of this variable JVM_CLASSPATH_DEFAULT_THIN_JDBC?
    It's located in HKEY_LOCAL_MACHINE\SOFTWARE\Oracle\HOMEx\REPADM61\DEFAULT_JVM_PARAMS_THIN_JDBC
    Could you also check that file <Home>\jlib\ewt4.jar does exist on your machine?
    Regards,
    Didier.

  • Color filling problem in fillarc() method of Graphics class

    I draw a circle in a panel. The circle space is divided to more than one sectors.The sectors are filled to particular color using fillarc(int x, int y, int start_angle, int end_angle) method of java.awt.Graphics class.
    When i fill the color, i faced a problem. That is i have seen the panel background Color in some pixels of thet arc spaces.
    How will i fill the particular color in full arc spaces? How will i solve this problem?
    Thanks for your advance reply.
    Regards
    Murali.R

    import java.awt.*;
    import java.awt.geom.*;
    import javax.swing.*;
    public class ArcFill extends JPanel {
        protected void paintComponent(Graphics g) {
            super.paintComponent(g);
            Graphics2D g2 = (Graphics2D)g;
            g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                                RenderingHints.VALUE_ANTIALIAS_ON);
            int w = getWidth();
            int h = getHeight();
            double radius = Math.min(w,h)*7/16.0;
            double x = (w - 2*radius)/2;
            double y = (h - 2*radius)/2;
            Ellipse2D.Double circle = new Ellipse2D.Double(x,y,2*radius,2*radius);
            // Fill east sector with Arc2D.
            Rectangle r = circle.getBounds();
            double start = -45.0;
            double extent = 90.0;
            int type = Arc2D.PIE;
            Arc2D.Double arc = new Arc2D.Double(r, start, extent, type);
            g2.setPaint(Color.red);
            g2.fill(arc);
            // Fill south sector.
            arc.setAngleStart(-135.0);
            g2.setPaint(Color.green.darker());
            g2.fill(arc);
            arc.setAngleStart(-225);
            g2.setPaint(Color.blue);
            g2.fill(arc);
            arc.setAngleStart(-315);
            g2.setPaint(Color.orange);
            g2.fill(arc);
            // Draw circle and lines.
            g2.setPaint(Color.black);
            g2.draw(circle);
            double theta = -Math.PI/4;
            double cx = circle.getCenterX();
            double cy = circle.getCenterY();
            for(int j = 0; j < 4; j++) {
                x = cx + radius*Math.cos(theta);
                y = cy + radius*Math.sin(theta);
                g2.draw(new Line2D.Double(cx, cy, x, y));
                theta += Math.PI/2;
        public static void main(String[] args) {
            ArcFill panel = new ArcFill();
            panel.setPreferredSize(new Dimension(400,400));
            JOptionPane.showMessageDialog(null, panel, "", -1);
    }

  • Anchor point used in drawImage() of  Graphics class

    Hi all,
    This is sourab.I need to know about the concepts of anchor point used in drawImage() of Graphics class.We all know in drawImage() method has four co-ordinates.First one is for Image name,second one is for x coordinate ,third one is for y coordinate and the final one is for anchor point.Actually anchor point will place the image in the corresponding position.Now my doubt is what is the purpose of x,y coordinates.
    Also i want some links to learn about this anchor point concepts.Can anyone provide solution to me ASAP.
    Regards/Thanks,
    Sourab

    We all know in drawImage() method has four co-ordinates. [co&ouml;rdinates?]http://java.sun.com/javase/6/docs/api/java/awt/Graphics.html
    Or 5 or 6 or 7 or 10 or 11. And if you include Graphics2D:
    http://java.sun.com/javase/6/docs/api/java/awt/Graphics2D.html
    There is second one taking 4 arguments, and one taking 3.

  • Chapman 2D graphic class

    Where can find Chapman 2D graphic class ?

    Maybe this helps:
    http://forum.java.sun.com/thread.jspa?threadID=558245&messageID=3232226

  • Can anyone help me change fonts and size on my page? I don't understand the class questions?

    Can anyone help me change fonts and size on my page? I don't understand the class questions? All I want to do is change the font and size of a table or div.
    http://www.allgearinc.com/AG12SSWL-Swift.htm -One problem page

    If you want to change the fonts of the entire page then this code will do the trick:
    body {
        font-size: 16pt;
        color: silver;
         font-family: whatever, goes, here;
    If you want to change the fonts of ALL tables on a page then the code is something like this:
    table {
        font-size: 20pt;
        font-family: "Courier New", Courier, monospace;
        font-style: italic;
        font-weight: bold;
    what exactly do you want to change?  Can you be a bit specific so that Ben or Ken can give you the exact code and tell you about the short-hand method to write the code in one line.
    Have you bought a book on CSS yet?  If not, it is a good idea to get one as a reference.  Eric Meyer writes good books on CSS.

  • Copy graphics class??

    I have an Image that I draw on using the graphics library and
    the possible drawing commands available (SetLineStyle, MoveTo,
    LineTo, CurveTo, BeginFill, etc). Is there a way to use that
    object, including what I drew on it, for a drag proxy so I see the
    drawn image during a drag? Basically, I want a copy of the graphics
    class.
    Any help would be appreciated!!!

    Check out Andrew Trice's blog on using the Bitmap API:
    http://www.cynergysystems.com/blogs/page/andrewtrice?entry=flex_2_bitmapdata_tricks_and
    He describes a number of potential uses (with code and
    examples); though he doesn't actually talk about using it for a
    drag proxy, it seems like it might be a step in the right
    direction.
    HTH,
    Chris

  • Inherit from a graphical classe

    Hi,
    It seem to be impossible to create a new class who inherit from
    a Forte graphical class (like ArrayField for example).
    I'd like to add a new method to ArrayField so I imagine a
    new class who inherit from ArrayField.
    Does somebody knows if it is possible ?
    Thanks by advance.
    Jean-Baptiste BRIAUD
    SEMA GROUP
    16 rue Barbes
    92126 Montrouge
    France
    Tel. : 01 30 92 30 92

    Java class names should start with an uppercase letter.... and should indicate the purpose of the class, that is to say, what it represents.
    For example, the class that best describes the reason behind many postings here:
    {color:#0000ff}http://java.sun.com/javase/6/docs/api/java/nio/charset/CoderMalfunctionError.html{color}
    and the outcome of those postings:
    {color:#0000ff}http://java.sun.com/javase/6/docs/api/java/nio/charset/CoderResult.html{color}
    In lighter vein, Darryl

  • Reply  immediatelt !!!!!!!!! implement Graphics Class in application Progra

    Dear Sir,
    How to implement Graphics Class in an Constructor in an Application Program.
    for Example
    In Applet
    public void init(){
    Graphics g;
    Dimension d;
    Font f;
    FontMetrics fm;
    g = getGraphics();
    d = size();
    f=new Font("Dialog",Font.PLAIN,12);     
    g. setFont(f);
    fm = g.getFontMetrics();
    standalone Application program
    Words(){
    Graphics g;
    Dimension d;
    Font f;
    FontMetrics fm;
    g = getGraphics();
    d = size();
    f=new Font("Dialog",Font.PLAIN,12);     
    g. setFont(f);
    fm = g.getFontMetrics();
    when we try to implement in an standlone Application program it gives
    Null Pointer Exception how to implement Grapics Class in an constructor of standlone Application program.

    I think this is an appropriate reply for this...

  • Abstract Graphics class ???ques???

    Referring to the abstract methods within this class such as drawPolyline and drawPolygon, etc . . . it says in the documentation for Class Graphics:
    "The Graphics class is the abstract base class for all graphics contexts that allow an application to draw onto components that are realized on various devices, as well as onto off-screen images."
    There are no sub-class method overrides for drawPolyline and drawPolygon, for example, except for those in subclass Class DebugGraphics, which in turn call Graphics.drawPolyline and Graphics.drawPolygon - for example - at the end of the method implimentation anyway.
    And besides, DebugGraphics is a swing class, and I would not be importing it in a strictly AWT application anyway.
    So where is the actual code for these methods is what I am wondering?
    Thanks;
    ~Bill

    The Graphics class is subclassed in JVM specific classes since rendering
    graphics on different machines is going to be done differently (this
    was discussed recently). So to use these methods find a suitable object
    (like an image already loaded) and call getGraphics on it. This will
    return a Graphics object cast from the JVM specific graphics subclass...
    Steve

  • Really Basic OO Class Question...

    heres the complete code for my applet...As i understand it this should make a "Car" class then should be generating a "car" object with the constructors marked...then i just use the g.drawstring to output this...but i get a nasty error message. Its something really simple, but its completely vexed me...thanks in advance.
    import java.applet.*;
    import java.awt.*;
    public class Traffclass extends Applet {
         public void init() {
         public class Car {
              public int length, width;
              public Color carColor;
              public Car() {  //constructor?
                   length = 7;
                   width = 5;
                   carColor = new Color(200,10,60);
         private Car car = null;
         public void run() {
              car = new Car();
              repaint();
         public class Trafficlight {
              public boolean greenlight = true;
         public void paint(Graphics g) {
              g.drawString(""+car.length, 50, 60 );
         //     g.fillRect(car);
    }

    As stated the problem is solved now, but heres the error message in question...
    Exception in thread "AWT-EventQueue-1" java.lang.NullPointerException
            at Traffclass.paint(Traffclass.java:39)
            at sun.awt.RepaintArea.paintComponent(RepaintArea.java:248)
            at sun.awt.RepaintArea.paint(RepaintArea.java:224)
            at sun.awt.windows.WComponentPeer.handleEvent(WComponentPeer.java:254)
            at java.awt.Component.dispatchEventImpl(Component.java:4031)
            at java.awt.Container.dispatchEventImpl(Container.java:2024)
            at java.awt.Component.dispatchEvent(Component.java:3803)
            at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
            at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
            at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
            at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
            at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    grantedIt wasn't a compiler message (what i am used to) so it threw me a bit.

Maybe you are looking for

  • Pass data parameter from URL to Forms

    Hi Is it possible to pass a data parameter from asp to Forms?. In my asp I have a url to call a form (eg. http://servername:port/forms90/f90servlet/form=testform.fmx). In my testform.fmx I accept 'account no' as a parameter for querying the records.

  • Adobe Captivate 4 and Windows 7 Enterprise 64 bits - sound doesn´t works

    Hi there, I´m trying to start a new recording, and when I click in Audio button and try to calibrate the sound or record a new audio, it doesn´t works. Thru the sound recorder (tool that comes with Windows 7 - Acessories), it works fine, but using Ad

  • Satellite L500-120 - Where can I get the display driver?

    Hey guys, I need some help in form of find the right Driver. My graphic card is a: ATI Mobility Radeon HD 4650 and I have the Satellite L500 120 PSLJ3E I need to have the Driver for my ATI Mobility Radeon HD 4650 but I cant find the right one.... Can

  • Buy a 3G iPad in USA and use it in France.

    Hello, I would like to know if I buy a 3G iPad (an AT&T model) in a US Apple Store, could I use it in France ? The AT&T iPad is it unlocked or should I unlock it before coming back to France ? Actually, I am French and I live in France. Thanks to the

  • Cant resize my window- it's too **** big???

    Havent been to Grage band in a month and now my window is so big I cant find the controls- it's too big to grab the lower left and corner- did something change in an update?