Hello - Scilab runs super fast on my macbook pro with the new ARM version, but there is some strange behavior on the file browser window when it is docked
when i double click to navigate down nothing happens until I force the window to refresh with a resize.
Anyone else report this issue too ?
really happy though to see Scilab ported for the Apple silicon chips
J
I have the same problem with Intel MacBook Pro with Sonoma 14.7.1 (23H222) and Scilab 2024.1.0.
The problem is:
You cannot always change to a parent or child directory or select a file. You have to click in the path line at the top of the file browser or in the console for Scilab to update the browser display in that case. You can watch a brief screecast at https://www.hani-ibrahim.de/public/misc/scilab/scilab-fm-bug.mp4
I also deleted my “scilab.ini” and even the whole “~/.Scilab” folder temporarily and I reinstalled Scilab w/o any toolboxes. But the problem persisted.
And it appears in 2024.0.0 and the current 2025.0.0, too. It does not appear in 2023.x.0. At the moment I use that version.
EDIT: I recently found out that it does not appear if you start Scilab on a new created user profile. Does Scilab stores any other configure files beside ~/.Scilab/?
No. However, Access rights (to filesystem, Desktop,…) are requested by macOS at first Scilab launch and I presume that partially granting them could cause the problem.
Thank you for your prompt help. That was also my first thought. So I gave Scilab full disk access in systems settings. Restart but the problem persists.
The version 2023.1.0 does not have full disk access but that problem does not appear in this version. 2024.x.0 and 2025.0.0 have the same problem, 2023.1.0 does not. And I gave 2024 & 2025 access to the requested folders at first startup. Weird.
But I agree it has something to do with my macOS profile settings. But I do not know where to look other than systems settings dialog.
then some message will probably issued when you click e.g. to go one level up and the browser does not update the current directory. In that case can you give the message ?
… when you click e.g. to go one level up and the browser does not update the current directory. In that case can you give the message ?
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 4
at org.scilab.modules.ui_data.filebrowser.ScilabFileBrowserModel.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.ScilabTreeTableModelAdapter.getColumnClass(Unknown Source)
at java.desktop/javax.swing.JTable.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.SwingScilabTreeTable.getEditingRow(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleChild(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleAt(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.valueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.setSelectionInterval(Unknown Source)
at java.desktop/javax.swing.JTable.changeSelectionModel(Unknown Source)
at java.desktop/javax.swing.JTable.changeSelection(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$Handler.adjustSelection(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$Handler.mousePressed(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mousePressed(Unknown Source)
at java.desktop/java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
at java.desktop/java.awt.AWTEventMulticaster.mousePressed(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 4
at org.scilab.modules.ui_data.filebrowser.ScilabFileBrowserModel.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.ScilabTreeTableModelAdapter.getColumnClass(Unknown Source)
at java.desktop/javax.swing.JTable.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.SwingScilabTreeTable.getEditingRow(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleChild(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleAt(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.valueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$Handler.setValueIsAdjusting(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 4
at org.scilab.modules.ui_data.filebrowser.ScilabFileBrowserModel.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.ScilabTreeTableModelAdapter.getColumnClass(Unknown Source)
at java.desktop/javax.swing.JTable.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.SwingScilabTreeTable.getEditingRow(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleChild(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleAt(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.valueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.changeSelection(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.removeSelectionIntervalImpl(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.clearSelection(Unknown Source)
at java.desktop/javax.swing.tree.DefaultTreeSelectionModel.resetRowSelection(Unknown Source)
at java.desktop/javax.swing.tree.FixedHeightLayoutCache$FHTreeStateNode.expand(Unknown Source)
at java.desktop/javax.swing.tree.FixedHeightLayoutCache.rebuild(Unknown Source)
at java.desktop/javax.swing.tree.FixedHeightLayoutCache.setModel(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTreeUI.setModel(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTreeUI$Handler.propertyChange(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTreeUI$PropertyChangeHandler.propertyChange(Unknown Source)
at java.desktop/com.apple.laf.AquaTreeUI$MacPropertyChangeHandler.propertyChange(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.fire(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.desktop/java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
at java.desktop/java.awt.Component.firePropertyChange(Unknown Source)
at java.desktop/javax.swing.JTree.setModel(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.SwingScilabTreeTable.reload(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.ScilabFileBrowserModel$1.done(Unknown Source)
at java.desktop/javax.swing.SwingWorker$5.run(Unknown Source)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
at java.desktop/sun.swing.AccumulativeRunnable.run(Unknown Source)
at java.desktop/javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
at java.desktop/javax.swing.Timer.fireActionPerformed(Unknown Source)
at java.desktop/javax.swing.Timer$DoPostEvent.run(Unknown Source)
at java.desktop/java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 4
at org.scilab.modules.ui_data.filebrowser.ScilabFileBrowserModel.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.ScilabTreeTableModelAdapter.getColumnClass(Unknown Source)
at java.desktop/javax.swing.JTable.getColumnClass(Unknown Source)
at org.scilab.modules.ui_data.filebrowser.SwingScilabTreeTable.getEditingRow(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleChild(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.getAccessibleAt(Unknown Source)
at java.desktop/javax.swing.JTable$AccessibleJTable.valueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.fireValueChanged(Unknown Source)
at java.desktop/javax.swing.DefaultListSelectionModel.setValueIsAdjusting(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$Handler.setValueIsAdjusting(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$Handler.mouseReleased(Unknown Source)
at java.desktop/javax.swing.plaf.basic.BasicTableUI$MouseInputHandler.mouseReleased(Unknown Source)
at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
at java.desktop/java.awt.Component.processMouseEvent(Unknown Source)
at java.desktop/javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.desktop/java.awt.Component.processEvent(Unknown Source)
at java.desktop/java.awt.Container.processEvent(Unknown Source)
at java.desktop/java.awt.Component.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.desktop/java.awt.Container.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Window.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.Component.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.desktop/java.awt.EventQueue$4.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.desktop/java.awt.EventQueue$5.run(Unknown Source)
at java.base/java.security.AccessController.doPrivileged(Unknown Source)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)
at java.desktop/java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.desktop/java.awt.EventDispatchThread.run(Unknown Source)