Slow GUI

I wrote a program which draws 96-well plates. These plates can be dragged on a scrollable JDeskTop pane. each plate is in a JInternalPane. The well's within the plates are drag-and-dropable. Right now the program uses 16mb of memory and it runs slowy even with only 2 or 3 plates on the workspace. The dragging is slow and it just generally responds slowly.
Is there any general method to speed up java GUI?
Thanks

String nameos= System.getProperty ("os.name");
if (nameos.startsWith ("Windows"))
               System.setProperty( "sun.java2d.noddraw", "false" );
               System.setProperty( "sun.java2d.ddscale","true" );
               System.setProperty( "sun.java2d.ddforcevram", "true" );
}Unfortunately i have the very same problem, but these line dont help much.

Similar Messages

  • Premiere Elements 10 slow GUI refresh

    Hi all,
    I am experiencing a very slow GUI refresh rate using Premiere Elements 10. It has been happening since I first started using the program, but I am using it a bit more now and it's starting to frustrate me.
    Basically, as soon as I open the program and create a new project, any action which changes the screen e.g. maximising, resizing the timeline, changing the timeline scale etc. occurs very slowly. For example, maximising the window takes approximately 4 seconds to complete, and resizing the timeline is very laggy.
    It is shown reasonably well in the following clip, although it is much more pronounced for me: http://www.youtube.com/watch?v=8C7GbqXir8o&feature=youtu.be
    This issue has been discussed in a few other questions, but none resolved the issue (that I have found) or have kind of gone off topic, so thought I would ask myself in an effort to resolve it.
    A couple of points to note:
    Occurs WITHOUT any video loaded i.e. with a completely empty project. (Loading video doesn't have any effect)
    It is not affected by the selected preset. They all have the same issue.
    Somewhat curiously, playback of video is fine.
    Disabling desktop composition as suggested in another post on this issue results in a slight improvement, but certainly does not make it go away.
    Computer specs:
    Windows 7 Pro x64 SP1 (I am using the 64 bit version of premiere elements)
    Core i5 2500
    8 Gb RAM
    EVGA GTX 460 1Gb
    Asus Z77 sabretooth motherboard
    Primary drive 2x 64Gb SSD's RAID 1 (OS and performance sensitive applications incl. Premier Elements)
    Secondary drive 2x 1Tb HDD's RAID 1 (Other applications & data storage)
    Note that the drive configuration and motherboard have been changed recently, and had no effect on this issue.
    Thanks in advance for any help.

    Thanks everyone for the responses, I really appreciate your assistance and thoughts.
    Here goes with how I have got on with your suggestions/answers to your questions:
    Steve:
    First of all let me just make it clear that this is occurring with nothing loaded - a completely blank project. Also, it would appear that it is a window refresh issue rather than program performance as such, as rendering/playback work just fine. This is just my initial impression though.
    Footage is  from a GoPro HD Hero 2, recorded in 720p at 60 fps (actually 59.94). I convert it to .avi using the GoPro Cineform software prior to editing. I use the DSLR 720p 60 preset. I have also tried the 720p60 AVCHD LITE preset which does not have any noticeable effect on the issue. I have tried using unconverted footage straight from the camera; again this has no noticeable effect on the issue. When I add video to the timeline, there is no red line above it  - although when I apply an effect e.g. brightness and contrast one does appear.
    I have never used still images so I don't know if they have any effect.
    I checked just now for OS updates and and a few (11 if I recall correctly) which I installed. They had no effect on the issue.
    I have also just updated to the latest graphics driver (320.49) and quicktime (7.7.4), again no effect on the issue.
    The RAID 1 setup is a data mirroring configuration - each drive is an exact mirror of the other. I have this  as I have had a few HDD's fail and having to get a new one, reinstall, etc. is just a nightmare - not worth it when the risk can be effectively eliminated for a bit extra $. I do not think this is the cause as I have had a few different configurations while using premiere elements (the SSD's are quite recent) and the issue stays the same.
    John:
    Thanks for the links, although I wasn't able to find anything that helped with the issue.
    I will have a look for what you mentioned re an older driver being potentially better, and will try it when if I find one that looks promising and I get some time. I am not overly hopeful though as I have used several different drivers, and I have not noticed any difference.
    Bill:
    I completely agree - I always go to the source for drivers rather than relying on driver update programs etc.
    ATR:
    Firstly I would just like to point out that the link was not my video - it is someone else's, who appears to be a somewhat similar issue. Apologies, I should have made that clear in the original post.
    What is really bugging me is adjusting the 'zoom' on the timeline (little bar on the right of the screen you drag left & right). When I move it, it will take a few seconds for everything on the screen to refresh. Not a massive issue, but really annoying!
    In response to your points though;
    I was not aware that the timeline scrollbar ghost trails are common to other versions. Is this a common issue or just some isolated instances of it? I have personally not noticed any bits of clips remaining on the timeline.
    I must confess I am a bit of a novice with this program, so would you be able to expand on what playback quality & playback settings I should be looking at? (Note that the playback itself is not an issue for me). Also, how might I go about checking for pile ups of preview/conformed audio/conformed video? If it helps I have all the scratch files in a dedicated folder on the SSD.
    I have just defragmented, but it had no noticeable effect.
    I would rather not use a registry cleaner (had some bad experiences in the past and not convinced they make a difference), and my computer is relatively clean. I do a complete fresh reinstall every 6 months or so and I am not in the habit of downloading all sorts of crap.

  • Super slow GUI - where to look?

    Hi
    I've got a GUI with a Jtree which has a root node and then clubs and then members.
    root
    - club
    -- member1
    -- member2
    - club
    -- member1
    My question concerns the way its not running, although the treeModel seems to be working it is so slow I can make a coffee before it shows on the screen. I can't seem to put my finger on what exactly is causing the problem, I'm not a great coder and wonder if anyone can give me any tips on what I should be looking for? Behind TreeModel are a Clubs Class, a Members Class and a Membership Class.
    I'm looking to find out what the major sinners in my program might be here? I never thought anything could cause such a major performance hit on a local machine.
    any advice would be welcome.

    Hopefully it won't be considered cross posting.Just leave a link and note here.
    but can't tell if its getChildCount or getIndexOfChild. IsLeaf may be a
    culprit but I don't do enough in there to have it as a major one.These were what I was thinking of. I remember doing something with
    a tree representing files/directories etc. I didn't realise that these were
    being called "behind the scenes" and found that I got better
    performance with a little caching of the relevent data.

  • Very slow GUI in web browser application

    Hello,
    I am trying to write a web browser application and I have a problem with the GUI. When the page is being loaded and set on the JEditorPane the GUI becomes very slow (actually it freezes). I don't know if this happens because of my swing implementation or because I am not using threads properly.
    I use the SwingWorker class. I created a worker thread which loads the web page and then sets it to the JEditorPane.
    Could you give me some ideas please? Below are some parts of my code.
    Thank you
    public class BrowserFrame extends javax.swing.JFrame {
        /** Creates new form BrowserFrame */
        public BrowserFrame() {
            initComponents();
            loadUrlsFromHistoryFile();
        private class RetrievePageTask extends SwingWorker<Void, URL> {
            private String address = null;
            RetrievePageTask(String address) {
                this.address = address;
                pageLoadProgressBar.setIndeterminate(true);
            protected Void doInBackground() {
                URL url = null;
                try {
                    url = new URL(address);
                    publish(url);
                catch(MalformedURLException exc) {
                    System.out.println(exc);
                catch(IOException exc) {
                    System.out.println(exc);
                return null;
            protected void process(List<URL> url) {
                try {
                    pageEditorPane.setPage(url.get(url.size() - 1));
                catch(IOException exc) {
                    System.out.println(exc);
                String url_str = url.get(url.size() - 1).toString();
                addressComboBox.setSelectedItem(url_str);
                addUrlToAddressComboBox(url_str);
        private void addressComboBoxItemStateChanged(java.awt.event.ItemEvent evt) {                                                
            // Get the affected item
            Object item = evt.getItem();
            if(evt.getStateChange() == java.awt.event.ItemEvent.SELECTED) {
                // Item was just selected
                if(item.toString().equalsIgnoreCase(""))
                    return;
                RetrievePageTask retrievePageTask = new RetrievePageTask(item.toString());
                retrievePageTask.execute();
            else if(evt.getStateChange() == java.awt.event.ItemEvent.DESELECTED) {
                // Item is no longer selected
                System.out.println("\nItem: " + item + " is no longer selected");           
        private void addressComboBoxActionPerformed(java.awt.event.ActionEvent evt) {                                               
            if ("comboBoxEdited".equals(evt.getActionCommand())) {
                // User has typed in a string; only possible with an editable combobox
                goButtonActionPerformed(evt);
            else if ("comboBoxChanged".equals(evt.getActionCommand())) {
                // User has selected an item; it may be the same item
                System.out.println("\nSpot TWO");
        private void goButtonActionPerformed(java.awt.event.ActionEvent evt) {
             RetrievePageTask retrievePageTask = new RetrievePageTask(address);
             retrievePageTask.execute();
        private void pageEditorPaneHyperlinkUpdate(javax.swing.event.HyperlinkEvent evt) {                                              
            if(evt.getEventType() == javax.swing.event.HyperlinkEvent.EventType.ACTIVATED) {
                 RetrievePageTask retrievePageTask = new RetrievePageTask(evt.getURL().toString());
                retrievePageTask.execute();
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    BrowserFrame surfRider = new BrowserFrame();
                    surfRider.setVisible(true);
    }

    Now it is all.
    package webbrowser;
    import java.net.*;
    import java.io.*;
    import java.util.*;
    import javax.swing.*;
    public class BrowserFrame extends javax.swing.JFrame {
        /** Creates new form BrowserFrame */
        public BrowserFrame() {
            initComponents();
            loadUrlsFromHistoryFile();
        /** This method is called from within the constructor to
         * initialize the form.
         * WARNING: Do NOT modify this code. The content of this method is
         * always regenerated by the Form Editor.
        // <editor-fold defaultstate="collapsed" desc=" Generated Code ">                         
        private void initComponents() {
            addressLabel = new javax.swing.JLabel();
            goButton = new javax.swing.JButton();
            jScrollPane1 = new javax.swing.JScrollPane();
            pageEditorPane = new javax.swing.JEditorPane();
            jButton1 = new javax.swing.JButton();
            jButton2 = new javax.swing.JButton();
            jButton3 = new javax.swing.JButton();
            homeButton = new javax.swing.JButton();
            refreshButton = new javax.swing.JButton();
            addressComboBox = new javax.swing.JComboBox();
            jLabel1 = new javax.swing.JLabel();
            statusLabel = new javax.swing.JLabel();
            pageLoadProgressBar = new javax.swing.JProgressBar();
            menuBar = new javax.swing.JMenuBar();
            fileMenu = new javax.swing.JMenu();
            openFileMenuItem = new javax.swing.JMenuItem();
            exitMenuItem = new javax.swing.JMenuItem();
            viewMenu = new javax.swing.JMenu();
            historyMenuItem = new javax.swing.JMenuItem();
            pageSourceMenuItem = new javax.swing.JMenuItem();
            toolsMenu = new javax.swing.JMenu();
            preferencesMenuItem = new javax.swing.JMenuItem();
            helpMenu = new javax.swing.JMenu();
            aboutMenuItem = new javax.swing.JMenuItem();
            setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
            setTitle("Surf Rider");
            setName("browserFrame");
            addWindowListener(new java.awt.event.WindowAdapter() {
                public void windowClosing(java.awt.event.WindowEvent evt) {
                    formWindowClosing(evt);
            addressLabel.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
            addressLabel.setText("Address:");
            goButton.setText("GO");
            goButton.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    goButtonActionPerformed(evt);
            pageEditorPane.setEditable(false);
            pageEditorPane.setContentType("text/html");
            pageEditorPane.addHyperlinkListener(new javax.swing.event.HyperlinkListener() {
                public void hyperlinkUpdate(javax.swing.event.HyperlinkEvent evt) {
                    pageEditorPaneHyperlinkUpdate(evt);
            jScrollPane1.setViewportView(pageEditorPane);
            jButton1.setText("Back");
            jButton1.setEnabled(false);
            jButton2.setText("Forth");
            jButton2.setEnabled(false);
            jButton3.setText("Stop");
            jButton3.setEnabled(false);
            homeButton.setText("Home");
            homeButton.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    homeButtonActionPerformed(evt);
            refreshButton.setText("Refresh");
            refreshButton.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    refreshButtonActionPerformed(evt);
            addressComboBox.setEditable(true);
            addressComboBox.addItemListener(new java.awt.event.ItemListener() {
                public void itemStateChanged(java.awt.event.ItemEvent evt) {
                    addressComboBoxItemStateChanged(evt);
            addressComboBox.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    addressComboBoxActionPerformed(evt);
            jLabel1.setText("Browser status: ");
            statusLabel.setText("Current status");
            pageLoadProgressBar.setBorder(javax.swing.BorderFactory.createEtchedBorder());
            fileMenu.setText("File");
            fileMenu.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    fileMenuActionPerformed(evt);
            openFileMenuItem.setLabel("Open File...");
            openFileMenuItem.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    openFileMenuItemActionPerformed(evt);
            fileMenu.add(openFileMenuItem);
            exitMenuItem.setLabel("Exit");
            fileMenu.add(exitMenuItem);
            menuBar.add(fileMenu);
            viewMenu.setText("View");
            viewMenu.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    viewMenuActionPerformed(evt);
            historyMenuItem.setLabel("History");
            viewMenu.add(historyMenuItem);
            pageSourceMenuItem.setLabel("Page Source");
            viewMenu.add(pageSourceMenuItem);
            menuBar.add(viewMenu);
            toolsMenu.setText("Tools");
            preferencesMenuItem.setLabel("Preferences");
            toolsMenu.add(preferencesMenuItem);
            menuBar.add(toolsMenu);
            helpMenu.setText("Help");
            aboutMenuItem.setLabel("About");
            helpMenu.add(aboutMenuItem);
            menuBar.add(helpMenu);
            setJMenuBar(menuBar);
            org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
            getContentPane().setLayout(layout);
            layout.setHorizontalGroup(
                layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup()
                    .add(jButton1)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(jButton2)
                    .add(6, 6, 6)
                    .add(refreshButton)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(jButton3)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(homeButton)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(addressLabel, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 56, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(addressComboBox, 0, 568, Short.MAX_VALUE)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(goButton))
                .add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 1008, Short.MAX_VALUE)
                .add(layout.createSequentialGroup()
                    .addContainerGap()
                    .add(jLabel1)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(statusLabel, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 339, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 470, Short.MAX_VALUE)
                    .add(pageLoadProgressBar, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
            layout.setVerticalGroup(
                layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
                .add(layout.createSequentialGroup()
                    .addContainerGap()
                    .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                        .add(goButton)
                        .add(jButton1)
                        .add(jButton2)
                        .add(homeButton)
                        .add(jButton3)
                        .add(refreshButton)
                        .add(addressLabel)
                        .add(addressComboBox, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 601, Short.MAX_VALUE)
                    .addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
                    .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
                        .add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
                            .add(jLabel1)
                            .add(statusLabel, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))
                        .add(pageLoadProgressBar, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
            java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
            setBounds((screenSize.width-1016)/2, (screenSize.height-724)/2, 1016, 724);
        }// </editor-fold>                       
        private class RetrievePageTask extends SwingWorker<Void, URL> {
            private String address = null;
            RetrievePageTask(String address) {
                this.address = address;
                pageLoadProgressBar.setIndeterminate(true);
            public String getAddress() {
                return address;
            public void setAddress(String newAddress) {
                address = newAddress;
            protected Void doInBackground() {
                URL url = null;
                try {
                    url = new URL(address);
                    publish(url);
                catch(MalformedURLException exc) {
                    System.out.println(exc);
                catch(IOException exc) {
                    System.out.println(exc);
                return null;
            protected void process(List<URL> url) {
                try {
                    System.out.println("\nBefore setting the editorPane");
                    pageEditorPane.setPage(url.get(url.size() - 1));
                catch(IOException exc) {
                    System.out.println(exc);
                String url_str = url.get(url.size() - 1).toString();
                url_str = url_str.toLowerCase(); // URL string is turned in lower case
                addressComboBox.setSelectedItem(url_str);
                addUrlToAddressComboBox(url_str);
                pageLoadProgressBar.setIndeterminate(false);
        private void openFileMenuItemActionPerformed(java.awt.event.ActionEvent evt) {                                                
    // TODO add your handling code here:
        private void viewMenuActionPerformed(java.awt.event.ActionEvent evt) {                                        
    // TODO add your handling code here:
        private void fileMenuActionPerformed(java.awt.event.ActionEvent evt) {                                        
    // TODO add your handling code here:
        private void refreshButtonActionPerformed(java.awt.event.ActionEvent evt) {                                             
        // Action performed when homeButton's Action Listener listens to an event. This
        // event is passed here as a parameter (evt). The selected item of the addressComboBox is
        // set to be the homePage. The browser goes to the home page.
        private void homeButtonActionPerformed(java.awt.event.ActionEvent evt) {                                          
            addressComboBox.setSelectedItem(homePage);
        // This method loads the URL history from the history.txt file into the vector and into the
        // addressComboBox.
        private void loadUrlsFromHistoryFile() {
            BufferedReader inputStream = null;
            addressComboBox.setSelectedItem(homePage);
            try {
                inputStream = new BufferedReader(new FileReader("history.txt"));
                String tmp;
                while((tmp = inputStream.readLine()) != null) {
                    // Adding url to history_mem vector
                    historyMem.add(tmp);
                    // Adding url to addressComboBox
                    addressComboBox.addItem(tmp);
            catch(IOException exc) {
                System.out.println(exc);
        private void addressComboBoxItemStateChanged(java.awt.event.ItemEvent evt) {                                                
            // Get the affected item
            Object item = evt.getItem();
            if(evt.getStateChange() == java.awt.event.ItemEvent.SELECTED) {
                // Item was just selected
                System.out.println("\nItem: " + item + " was just selected");
                if(item.toString().equalsIgnoreCase(""))
                    return;
                RetrievePageTask retrievePageTask = new RetrievePageTask(item.toString());
                retrievePageTask.execute();
            else if(evt.getStateChange() == java.awt.event.ItemEvent.DESELECTED) {
                // Item is no longer selected
                System.out.println("\nItem: " + item + " is no longer selected");           
        // Action performed when an event occurs in the addressComboBox (eg Pressing enter
        // after typing the address).
        private void addressComboBoxActionPerformed(java.awt.event.ActionEvent evt) {                                               
            if ("comboBoxEdited".equals(evt.getActionCommand())) {
                // User has typed in a string; only possible with an editable combobox
                goButtonActionPerformed(evt);
            else if ("comboBoxChanged".equals(evt.getActionCommand())) {
                // User has selected an item; it may be the same item
        // Action performed when goButton's Action Listener listens to an event. This
        // event is passed here as a parameter (evt). When a valid URL is inserted, the
        // pageEditorPane is set to that URL.
        private void goButtonActionPerformed(java.awt.event.ActionEvent evt) {                                        
            // 6 spaces added to the address. This is done for control reasons. Below we
            // use substring which causes exception when those spaces do not exist.
            String address = addressComboBox.getSelectedItem() + "      ";
            if(addressComboBox.getSelectedItem() == null || address.equalsIgnoreCase("      ") || address.equalsIgnoreCase("http://      ")) {
                JOptionPane.showMessageDialog(null, "No address specified.", "No address", javax.swing.JOptionPane.ERROR_MESSAGE);
            else {
                if(!address.substring(0, 7).equalsIgnoreCase("http://"))
                    address = "http://" + address;
                    RetrievePageTask retrievePageTask = new RetrievePageTask(address);
                    retrievePageTask.execute();
        // Action performed when closing the form window
        private void formWindowClosing(java.awt.event.WindowEvent evt) {                                  
            try {
                addUrlsToHistoryFile(historyMem);
            catch(IOException exc) {
                System.out.println(exc);
        /* This method is used to handle the case in which the user clicks on a hyperlink.
         In this case the pageEditorPane must present the contents of the URL that was
         clicked. This URL is retrieved from the evt object (which is a parameter to this
         method) with the method getURL().
        private void pageEditorPaneHyperlinkUpdate(javax.swing.event.HyperlinkEvent evt) {                                              
            if(evt.getEventType() == javax.swing.event.HyperlinkEvent.EventType.ACTIVATED) {
                 RetrievePageTask retrievePageTask = new RetrievePageTask(evt.getURL().toString());
                retrievePageTask.execute();
        // This method adds the visited URLs to the addressComboBox's item list. It takes as a
        // parameter the URL which is going to be added. If the URL is already in the list, then
        // it is not added again.
        private void addUrlToAddressComboBox(String url_str) {
            // number of items in the combo box's list
            int itemCount = addressComboBox.getItemCount();
            for(int i = 0; i < itemCount; i++) {
                if(url_str.equalsIgnoreCase((String)addressComboBox.getItemAt(i)))
                    return;
            addressComboBox.addItem(url_str);
            historyMem.add(url_str);
        // This method adds the visited URLs to the history file. It takes as a parameter the URL
        // which is going to be added.
        private void addUrlsToHistoryFile(Vector url_history) throws IOException {
            PrintWriter outputStream = null;
            try {
                outputStream = new PrintWriter(new FileWriter("history.txt"));
                for(int i = 0; i < url_history.size(); i++)
                    outputStream.println((String)url_history.get(i));
            finally {
                if(outputStream != null) {
                    outputStream.close();
         * @param args the command line arguments
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    BrowserFrame surfRider = new BrowserFrame();
                    surfRider.setVisible(true);
        // Variables declaration - do not modify                    
        private javax.swing.JMenuItem aboutMenuItem;
        private javax.swing.JComboBox addressComboBox;
        private javax.swing.JLabel addressLabel;
        private javax.swing.JMenuItem exitMenuItem;
        private javax.swing.JMenu fileMenu;
        private javax.swing.JButton goButton;
        private javax.swing.JMenu helpMenu;
        private javax.swing.JMenuItem historyMenuItem;
        private javax.swing.JButton homeButton;
        private javax.swing.JButton jButton1;
        private javax.swing.JButton jButton2;
        private javax.swing.JButton jButton3;
        private javax.swing.JLabel jLabel1;
        private javax.swing.JScrollPane jScrollPane1;
        private javax.swing.JMenuBar menuBar;
        private javax.swing.JMenuItem openFileMenuItem;
        private javax.swing.JEditorPane pageEditorPane;
        private javax.swing.JProgressBar pageLoadProgressBar;
        private javax.swing.JMenuItem pageSourceMenuItem;
        private javax.swing.JMenuItem preferencesMenuItem;
        private javax.swing.JButton refreshButton;
        private javax.swing.JLabel statusLabel;
        private javax.swing.JMenu toolsMenu;
        private javax.swing.JMenu viewMenu;
        // End of variables declaration                  
        // Variables decleration - able to modify
        private Vector<String> historyMem = new Vector<String>();
        private String homePage = "http://www.kaissa.gr";
        // End of variables decleration
        // PUBLIC METHODS
        // Get and Set methods for the private variables declared above
        public Vector getHistoryMem() {
            return historyMem;
        public void setHistoryMem(Vector<String> newHM) {
            historyMem = newHM;
        public String getHomePage() {
            return homePage;
        public void setHomePage(String newHP) {
            homePage = newHP;
    }

  • Slow GUI apps with savage video drivers?

    Whenever I run an app with a GUI it barely runs. I can take Firefox as an example, Starting it is fine but whenever I visit a website that requires scrolling its incredibly slow. I started with Openbox and tried switching to xmonad but both has the same problem. The specifications of the computer is 1ghz cpu, 1gb memory and a savage gpucard. Ive tried both Vesa and Savage video drivers with the same results. Anyone who had a problem like this and know how to solve it?

    Do you configure X manually with xorg.conf? I've found two examples for a xorg.conf in the wiki:
    http://wiki.archlinux.org/index.php/IBM … d_T23#Xorg
    http://wiki.archlinux.org/index.php/IBM … d_T21#Xorg
    While they seem a little bit dated (xorg 1.5) and are probably not for your machine, it may be worth trying some of the ideas.
    With respect to Firefox, I found that disabling the smooth scrolling feature (Edit -> Preferences -> Advanced -> General) brought me some speed increases on older graphics cards.

  • Slow GUI refresh in PrE10

    I installed the 64 bit Windows 7 version of Premeiere Elements 10 for my OS but the GUI is very slow and jerky. Resizing tracks is slow, scrolling up and down tracks leaves ghost trails. The shuttle moves across the timeline in a jerky manner. Adding effects and doing certain tasks make the whole GUI flash as if it can't refresh the screen fast enough. Moving clips around flash and spasm. The whole program generally runs very slowly - which on my system is unusual.
    I should point out the slowness has nothing at all to do with the project settings or the clips in the video because these problems are there from the start before adding anything to the timeline. Just moving black video clips around or adding text is slow. Just using the program with nothing on the timeline is the same and gets progressively worse when clips and stuff are added, the more complex the project gets the slower the program refreshes the GUI.
    My systems specs:
    CPU: Core i7 965 Extreme 3.2Ghz
    RAM: 6Gb Corsair 1600
    MOBO: Asus P6T Deluxe
    GPU: Nvidia EVGA GTX 580 (current driver version: 296.10)
    DirectX 11
    SOUND: X-Fi Titanium Fata1ty
    Cooler Master V8 CPU Fan
    PSU: 1200W Cooler Master Gold Pro
    HDD: 1Tb WD Caviar Black
    HDD: 500Gb Seagate Baracuda
    Corsair 600t
    Dell 2408WFP 24"
    OS: Windows 7 Ultimate 64bit.

    The performance issue with Intel vs AMD is not straight-line performance, but performance with Adobe programs. They are written to take full advantage of an Intel CPU, though still run quite well on an AMD, just not as well as on an Intel chip. Still, that should not even be noticed, and especially at an initial stage with a Project. One might see it, if the Project was very large and intricate. I do not believe that it would be an issue here - though I could be wrong. PrPro CS 5.5/6 show improved performance on an Intel CPU, than on an AMD, with very similar specs. To see those differences, you can look at the performance database from the PPBM benchmark site - sort by CPU and interpolate the performance between similar Intels and AMD's. Still, those performance attributes should be seen only when using PrPro's editing functions, and not with GUI redraw.
    As for the red line, lets discuss that a bit, as it CAN be important, though should NOT manifest itself with the display of the GUI, which is what we are basically talking about here - only with playback in the Program Monitor. Initially, when a Clip is placed onto the Timeline, a red line indicates that there is a mis-match between the Project's Preset, and the properties of the Clip(s). That should be addressed at the New Project stage. One should NOT have a red line initially, and that CAN create issues, and not just playback problems.
    Then, if one has no red lines, or green lines (after a Render of the Timeline), and they add/adjust any Effect, add any sort of overlay, such as a PiP, a Transition, or overlay Title, a red line will appear. That indicates that for the smoothest possible playback in the Program Monitor, one would want to Render the Timeline, or that part of it, with the red line. Note: that affects playback in the Program Monitor only, and NOT GUI redraw. Also, if one adds a Still Image to the Timeline, there WILL be a red line above it, as PrE basically needs to "create" video from the Still Image. Again, that is ONLY for playback in the Program Monitor, and NOT GUI redraw.
    You are correct that with large, mostly empty HDD's, defragmentation is not as important, as with smaller, mostly used up HDD's. However, it should not be dismissed entirely - it is just not quite as important, as it once was. There are performance benefits when working with defragmented files (less seek time), and also performance benefits from having files on the outside areas of the platters (again, less seek time). However, that file placement performance gain will be somewhat minimal, and should not be affecting GUI redraw much, if at all. Even with large, partially used HDD's, defragmentation should not be overlooked.
    Also, with a 64-bit OS, and plenty of physical RAM, the Page File is less important, than it was with 32-bit OS and the max, usable 4GB of RAM. In addition, having the Page File statically managed, is less important, as a 64-bit OS w/ plenty of RAM, has many more resources at its disposal, so the dynamically managed Page File's CPU cycels are far less important. As the Page File is used less often, having it statically managed Page File, placed on the outer areas of a HDD, are also less important, than with a 32-bit OS and 4GB RAM.
    I wish that I had some other thoughts to share in this matter, and will be watching for others' observations, and tests, with rapt attention, as I feel that I will soon learn something.
    Good luck to all,
    Hunt

  • Slow gui redraws in timeline panel

    Dual Xeon 2620v2 12 Cores 24 threads
    Radeon 290X 4GB / Quadro 5000
    SSD Raid 0
    64GB RAM
    win7 64
    ae cc 12.2.1.5
    Hi everyone,
    After Effects is an absolute pleasure working with and it is one of the most used Softwares in our Animation Studio.
    As compositing lead I'd like to ask a performance related question, that would greatly improve our speed.
    We work on Workstations, that apart from single core performance are quite fast as I would think. (see above)
    Working in the timeline panel with dozents (hundrets) of layers though is quite slow and laggs when the left part (with all the text, blendmodes etc) has to be redrawn.
    Interestingly it is not the amount of layers that is crucial: Havin 50 Layers is as slow as having 200 Layers. The amount that is shown slows the redraw down.
    Turning off columns eg layer colors, blendmodes, etc speeds up the redraw considerably, but is not an option since its slows or workflow. Decreasing the size of the panel speeds it up considerably, but we need the overview.
    Now I would think the graphics cards we have are quite top tier and suspect opengl performance would be the crucial factor here. Though I also read somewhere these redraws are  dependent on cpu single-core performance.
    My question now is quite simple: I would think redrawing gui or parts of it even if there are lots of texts and buttons on it would be feasable and fast on such systems. Is there something we can do to improve the performance? Loosing parts of seconds and seconds everytime we scroll or click on layers adds up to a lot of time (and ultimately frustration ;-) )
    Looking forward to your replies!
    Thanks,
    Alex

    Hi Szalam,
    We dont have the cards in the same workstation. I meant we have both type of cards on different systems. Both have the lags.
    I am talking about split second lags .. when i scroll up and down for example, it updates the panel every half second or so.
    When there are only few layers in the timeline panel it updates it instantaneously and probably dozents of times per second. (selecting, expanding, etc)
    Timeline panels refreshing every half second doesnt seem like much of a lag, but makes working on large comps quite unprecise in our experience ;-)
    Actually this thread I found states our problem exactly (though no solution):
    http://forums.adobe.com/message/5300130
    One thing I noticed is that one cpu-core goes up to a hundred percent when scrolling the timeline on large (simple!) comps. Is this the problem, that the updates cant be calculated fast enough by the cpu? We also have workstations with single-core speeds of 3,6ghz, they have the same problem... mh
    Thank you!

  • Slow GUI after Leopard installation

    Hi!
    I have a 17-inch Macbook Pro with 2,4ghz CPU, 2GB ram and hi-res monitor. Everything was very quick and reponsive in Tiger, but after doing an archive & install of Leopard (with settings kept) the GUI is very slow. Dashboard, the dock, minimizing windows (genie effect) is very sluggish (looks like it is not 3d accelerated) although the computer is not working with anything (according to Activity monitor/top). I have no third party software running and I tried doing a fresh install with the problem still there. Exposé seems to be running like it should do, but Dashboard, Dock and minimizing things are affected. It is very obvious while holding down shift key at the same time as minimizing a window with genie effect - it is anything but smooth! Looks much better on a PowerBook G4 667mhz with Tiger.
    I also get less FPS in games like Quake III or Urban Terror. On Tiger it was around 90 FPS all the time, now it is around 50.
    Are there updated graphics drivers on the way or any other solution to the problem?
    Thanks
    Jacob

    Try putting these numbers in Network>TCP/IP>DNS Servers, for the Interface you connect with...
    208.67.222.222
    208.67.220.220
    Then Apply. For 10.5/10.6 Network, highlight Interface>Advanced button>DNS tab>little + icon.
    DNS Servers are a bit like Phone books where you look up a name and it gives you the phone number, in our case, you put in apple.com and it comes back with 17.149.160.49 behind the scenes.  
    These Servers have been patched to guard against DNS poisoning, and are faster/more reliable than most ISP's DNS Servers.

  • Slow GUI after Printing

    After printing, my swing gui takes 3 times as long to update 2d graphics (using paintComponent). Before printing, it updates very quickly, and the slowdown only occurs after printing. Anyone know how to fix this?

    Tippity Top

  • Slow GUI response time on 680

    I just bought a new unlocked 680 to replace my old 650. I followed all the instructions to update Palm Desktop and sync'd my old data onto the new device. My first impressions are that the phone is good. However, I have noticed that the response time can be slow. For example, when using the navigation keypad in the main Apps screen it will get stuck for a second or so and then catch up. Also, the response in the Contacts can be noticeably slow.
    Is this "normal" or is there something wrong that needs fixing?
    Thanks, 
    -Computerguy
    Post relates to:

    sluggishness of the device can be attributed to the number of files and applications on it.
    how slow is the response you mentioned? can you please state the time before an application opened?
    if it's going to take more than 10 secs then that could an issue with your apps and data.
    try soft reset and verify response again.
    if it's still the same, there is a need for you to do a hard reset.
    once your done with the hard reset, try your tapping the onboard apps and observe the response before doing any hotsync. try to see if it's still behaving the same.
    if it is still showing the same behavior. your device is defective so you have to send back for replacement from the store.
    if the device functions ok after the hard reset, you need to rename the backup folder in the username folder before doing any hotsync.
    this way, you are taking away 3rd party apps when doing the hotsync. then observe the device.
    if you have 3rd party apps that you need, you can install it again 1 by 1. if it's just PRC and PDB files, you can just go back to the renamed backup folder and drag them to the install tool then hotsync.
    it those are exe files, you really need to reinstall it again and then sync.

  • SLOW GUI in RAZR MAXX

    I bought this phone because I wanted something with killer battery life AND because it's loaded with RAM and processing power.  But after I updated to ICS ( due to issues) I noticed that all the nice animations that I had on the old OS are now gone.  My phone is slow and choppy!  Turning the phone horizontal and vertical causes the orientation to change after about 2 seconds and it doesn't transition smoothly.  it just "pops" into it's new orientation without trying to look smooth while it's doing it.  This is the story with MANY of the featurs on the phone.  The menus are slow and boring.  I bought an expensive phone so that I would not have to deal with "free smart phone" blues.  But look what I got.  I slow, choppy phone that I paid out the nose for.
    Any suggestions?  Is there any setting that will allow a friendlier looking OS?  This thing just looks like it is out of the 80's.  Sometimes I have to restart it because it responds to touch slowly.  looking at pictures is a painstaking and embarassing feat.  I had to put fireworks as my backdrop so that it would look exciting.  blah.  I should have gone with the galaxy SIII or something. 
    AM I MISSING SOMETHING???
    TexmanT

    Good Response..D.W. 
    Textman if it keeps giving you Trouble Try a Clearing of the Cache Partition, if that doesn't work i would try a Factory Reset but if you Do that do just the Reset not the Internal storage or your Card leave that for a Later clearing if it's still Acting Up..
    Here is the Instructions for clearing the Cache Partition: Give this a Try Hope it Helps ya Out Let me know the Results.. b33
    These are the Instructions on Clearing the Cache Partition:  For Razr & Razr Maxx
    Top Alternate method
    Power the device off.
    Press the Power button then select Power off.
    If the device doesn't respond to input, press and hold the Volume Up / Down then press and holdPower button. When the device screen goes blank release the Power button while continuing to holdVolume Up / Down, proceed with step 3.
    Press and hold the Volume Up / Down then press the Power button.
    When presented with the Boot Mode Selection Menu release all buttons.
    Press Volume Down to select Recovery then press Volume Up.
    From the Droid triage screen, simultaneously press Volume Up / Down.
    Select Clear the Cache Partition then press the Power button.
    Select reboot system now then press the Power button.

  • Premiere Elements 10 64 bit GUI refresh slow

    Hello All,
    Before I start talking about the issue, I want to take this opportunity to thank Adobe for an amazingly feature rich Elements product pair.  Both Photoshop and Premiere Elements 10 are chalk full of unexpected features that can be useful for any body at a surprisingly reasonable price!
    Having said that, I sincerely hope that there is a solution to the behavior I am experiencing.  I am going to be calling technical support tomorrow to see what they have to say.  In the mean time, I wanted to post this in the forums, in case someone has already figured out a solution or if others are experiencing the same issue and have suggestions.  Here is my system spec:
    OS: Windows 7 64 bit
    CPU: AMD Quad core 3.0 GHz
    RAM: 8 GB
    Multiple Hard drives (including SSD) to split load of OS, Program files, virtual memory, Media cache files, and Preview files
    After searching on the Internets and the forums, I am experiencing a handicapping Premiere Elements GUI performance lag, that apparently, others have experienced in previous versions. The exact symptoms are, relatively speaking,
    generally slow GUI response,  
    annoying artifacts when panels are resized, at the point of resizing...sometimes these artifacts stay there until the Premiere window is minimized and restored.  For example the timeline will duplicate itself above itself when the panel is resized
    choppy mouse pointer movement while a clip is being dragged on the timeline, sometimes causing irritating accurate clip placement
    These symptoms are apparent, especially on the time-line where the clips refresh at a surprisingly slow rate, to the degree, that sometimes one is looking at the screen and tapping fingers while waiting for the clips to refresh on the time-line to the new position of movement.  And this is with one 3 minute movie file (1440x1080 m2ts) on the time-line with no effects or anything applied yet. 
    These symptoms occur when I have nothing else running in Windows (even disabled antivirus at one point), and no effects applied.  With other programs running Premiere GUI response slows down to a crawl.  It becomes unusable.  Fortunately there is a work around, though not for everyone.
    The work around from the internet is to disable a Windows 7 GUI feature called "Desktop Composition".  This work around is easily implemented as such:
    Right click on the Premiere Elements program shortcut.
    Click on properties
    Select the Compatibility tab
    And check "Disable Desktop composition" in the Settings group
    However, there is an exception to this work around.  It only reveals itself if you are using the 32 bit version on Windows 7 64 bit.  If you are using the 64 bit version of Premiere Elements then the Settings group options are grayed out.  In which case the only work around is to disable "Desktop Composition" as such:
    Right click on Computer icon
    Click on properties
    Click on Advanced system settings
    Select the Advanced tab
    Click on Settings button under Performance
    In the Visual Effects tab uncheck "Enable Desktop Composition"
    After disabling desktop composition this way, Premiere Elements 10 GUI response rate is acceptable (though still not up to par with other comparable or higher end programs like Premiere Pro.  I have seen Premiere Pro tutorial videos made on systems with half the resources of this computer and using the same file types of similar sizes  (on multiple tracks) and resolution with mouth watering response rates to dream for). 
    Unfortunately there are draw backs to the second work around, because you have to disable Desktop Composition in the Advanced System Settings, you are causing all the programs to suffer from the lack of this feature.  And, apart from Aero being disabled (which I miss using) for example, other programs that depend on this feature start to show discernible artifacts on the screen when their windows are moved around, and generally speaking the Windows 7 GUI takes a visible refresh rate hit, it seems to me.
    What I am hoping for is this:
    An update to improve this slow refresh rate with Desktop Composition enabled, since this feature is apparently crucial for a comfortable Aero GUI user experience which I have become attached to.
    If not, then at the least the ability to  disable “Desktop Composition" only for Premiere Elements. 
    If not, then at the very least some way to automatically disable desktop composition when Premiere Elements is started, and then when it is turned off, re-enable this feature seamlessly without user intervention. 
    Currently, I am having to manually go into Advanced System Properties every time before I start Premiere Elements and after I close it to disable and enable desktop composition.
    Thanks for your support!

    Thanks all for your replies...
    For some reason my original adobe ID is not working.  I tried to login to the adobe forums several times since yesterday to answer your replies without success...I tried several browsers, different computers as well...it hangs on this address:
    https://www.adobe.com/cfusion/entitlement/index.cfm?e=ca&returnurl=http://forums.adobe.com /adobe_login&loc=en
    So I thought I would create a new ID and see if it works and it does, i am baffled, maybe something got corrupted with the old IDs long screen name or something, but I am the same person as PhotoPremElements10-iRLU64
    To address your reply
    My experience with aero has been without problems.  I have a couple of netbooks (1.6GHz atom processor) and aero works smoothly, so my quad core has been delightfully working with aero, until Premiere Elements.
    I have an AMD 4850 512MB video card with all the latest updates. 
    After having used Premiere Elements for a few more hours, I am beginning to find other annoying problems even with aero turned off:
    artifacts on the screen when windows are undocked
    I tried a video with several tracks, one video and a few title tracks, and the timeline response slowed down to a crawl
    Task panel does not respect the the monitor's screen resolution.  When undocked from the My Project panel and Monitor panel, and maximized on my 1280x1024 LCD, the right half of the Task panel gets cropped off (for the lack of a better phrase) and the minimize, maximize/restore and close buttons are off the screen
    Even though the pdf manual talks about docking windows, I found the docking functionality missing in my install.  The only three windows I can dock are the Task Panel, Monitor, and My Project, everything else is undockable
    ...I could go on, but it seems I am hitting some sort of frustration threshhold with Premiere
    On the other hand, I spent an hour with Photoshop Elements, and it has been nothing but a delight.  The interface is tight, response is brisk, with or without aero.  I notice that Photoshop Elements also responds a lot better with tons of apps open at the same time.
    And now as I looked at other posts, it seems there is at least one other who has similar experiences with premiere elements.  I think one of them is using it on a Mac, and has the same slow responsiveness on the timeline panel.  At the least I am relieved that its not only me.
    I hope there is an update soon. 
    Thanks for your support!

  • Choose Disk interface extremely slow

    Odd problem. On my MacPro I've been backing up to an external FW800 drive for quite awhile. Earlier last week I moved that drive to my Leopard Server, repartitioned it and reformatted it. I've made it available as a time machine backup destination and my Mini and MBP are happily backing up to it now.
    Problem is on the MacPro when I select "Change Disk" in the time machine preferences it takes forever to bring up a list (at least a minute). On that list I see my local drives and the server drive. Each refresh of the list takes a minute or more (i.e. I click no disk or the server drive). Eventually I get the server drive selected and when it goes to back up it says the drive can't be mounted.
    Any idea what's going on?

    Hello oswaldt,
    Do you still experience the "slow interface" problem with Time Machine?
    I had the same with Mac OS 10.5.4 Server on a PowerMac G5. The problem went away after a fresh install. But now having switched on a MacPro and done a bit of configuration on the server, I get the "slow interface" problem back.
    Here's what I've done so far, so you may recognize something in your setup:
    - Server boot disc is a mirror of 2 x 250 GB (internal).
    - The 2 other internal drives are 500 GB each, and were concatenated.
    - A Sonnet Fusion D500P is connected through a Sonnet Tempo SATA E4P controller card. Tower is loaded this way:
    -- bay 1: 500 GB
    -- bay 2: 500 GB
    -- bay 3: 1000 GB
    -- bay 4: 500 GB
    -- bay 5: 500 GB
    bay 1 and 4 are stripped (STRIP1);
    bay 2 and 5 are also stripped (STRIP2);
    STRIP1 and STRIP2 are mirrored;
    bay 3 is the TimeMachine backup drive;
    All disc mirroring, contenation and stripping were done using DiskUtility.
    [edit]: I've forgot, I also have a 300 GB Maxtor OneTouch drive connected through FireWire...
    The MacPro has 8GB of RAM.
    On the server config side, I have:
    - Fixed IP address;
    - working DNS setup with a custom-made top-level zone for the LAN;
    - freshly started OpenDirectory service;
    - AFP service running (automatic configuration, I've touched nothing);
    - no other service running for now;
    - hostname returned by command "hostname" in Terminal is not <nameOfComputer>.local. It's a fully qualified name like server.gti.lan.
    Note that, on my side, although the interface is very slow, I can get TimeMachine to work. So I suspect there are two problems in your case: slow GUI response time, and then drive-related issue.
    Let me know what you can find. I've seen very few posts regarding that problem, and found none answered so far...
    Message was edited by: Frederic Denis

  • Switching back to DirectTV first chance I get.

    DVR cuts 3-5 mins off the tail of recordings. LIVE shows are cut short if games run long. When told to record "first run", DVR records everything filling up with 80 episodes of Top Gear, many of them repeats. Remotes are unresponsive, slow, GUI is a soggy mess, recordings are listed by date, not show title like DirectTV.... Overall much less pleasant viewing experience. Oh yeah, and On Demand can't fast forward... So I have to re-watch the first half hour of the new Blacklist as the first half of my recording was the Super Bowl.
    Fed up.

    Can't say that I have heard anyone else claim that DVR is cutting off the end of a non-live show that runs long.
    Pretty sure no DVR can extend the recording of a live show that runs long (ie a football game).
    On Demand FF is controlled by the content provider. I belive people have stated they see similar on other providers.
    If a forum member gives an answer you like, give them the Kudos they deserve. If a member gives you the answer to your question, mark the answer as Accepted Solution so others can see the solution to the problem.

  • No WIFI after iOS 7 upgrade on iPhone 4s!

    Dear Apple et al,
    Like scores of other Apple customers, since upgrading from iOS 6 to 7 on my iPhone 4s, I have completely lost WIFI capability and experienced slower GUI performance in general. I have explored all other options including consulting Apple's Genius Bar to no avail. I have tried to downgrade the iOS back to version 6 but Apple has made this impossible. This problem has forced me to rely soley on costly 3G for internet access. Please help!
    Sincerely,
    Jacob

    I have since reset the firmware on my existing router after reading that there may be compatibility issues with newer iPhones/OSs and older routers .. I also checked router wireless and network settings against Apple recommended settings on http://support.apple.com/kb/HT4199?viewlocale=en_US ..  So far, situation appears improved. Let's see if that persists.

Maybe you are looking for