You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by "Emilian Bold (JIRA)" <ji...@apache.org> on 2019/03/30 21:54:02 UTC

[jira] [Updated] (NETBEANS-2326) Explorer API views (ListView, TreeTableView) flicker when filtering nodes

     [ https://issues.apache.org/jira/browse/NETBEANS-2326?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Emilian Bold updated NETBEANS-2326:
-----------------------------------
    Description: 
For a brief second the Explorer API views show dummy nodes for a filtered node.

The children filtering is done the 'usual' way:

{{new FilterNode.Children(node) {}}
 {{ @Override}}
 {{ protected Node[] createNodes(Node key) {}}
 {{ if (rule(key)) {}}
 {{  return super.createNodes(key);}}
 {{ } else {}}

{{  //filter out}}
 {{  return new Node[0];}}
 {{ }}}

}

and what happens is that the ListView / TreeTableView GUI does *not* show only the allowed nodes. It shows all the original children for a split second then it shows the filtered nodes.

See the attached screenshot and video for a general idea. I'm also going to attach a small project.  

Oddly enough Children.Keys(boolean lazy) [http://bits.netbeans.org/dev/javadoc/org-openide-nodes/org/openide/nodes/Children.Keys.html#Keys-boolean-] does mention a "dummy" Node but it was never clear what that is and I never imagined it could go all the way to the UI.

 

  was:
For a brief second the Explorer API views show dummy nodes for a filtered node.

The children filtering is done the 'usual' way:

{{}}{{new FilterNode.Children(node) {}}
{{ @Override}}
{{ protected Node[] createNodes(Node key) {}}
{{ if (rule(key)) {}}
{{  return super.createNodes(key);}}
{{ } else {}}

{{  //filter out}}
{{  return new Node[0];}}
{{ }}}
{{ }}}

and what happens is that the ListView / TreeTableView GUI does *not* show only the allowed nodes. It shows all the original children for a split second then it shows the filtered nodes.

See the attached screenshot and video for a general idea. I'm also going to attach a small project.  

Oddly enough Children.Keys(boolean lazy) [http://bits.netbeans.org/dev/javadoc/org-openide-nodes/org/openide/nodes/Children.Keys.html#Keys-boolean-] does mention a "dummy" Node but it was never clear what that is and I never imagined it could go all the way to the UI.

 


> Explorer API views (ListView, TreeTableView) flicker when filtering nodes
> -------------------------------------------------------------------------
>
>                 Key: NETBEANS-2326
>                 URL: https://issues.apache.org/jira/browse/NETBEANS-2326
>             Project: NetBeans
>          Issue Type: Bug
>          Components: platform - Explorer, platform - Nodes
>    Affects Versions: 8.2, 10.0
>            Reporter: Emilian Bold
>            Priority: Major
>         Attachments: dummy-nodes.png, filternode-flicker.mov
>
>
> For a brief second the Explorer API views show dummy nodes for a filtered node.
> The children filtering is done the 'usual' way:
> {{new FilterNode.Children(node) {}}
>  {{ @Override}}
>  {{ protected Node[] createNodes(Node key) {}}
>  {{ if (rule(key)) {}}
>  {{  return super.createNodes(key);}}
>  {{ } else {}}
> {{  //filter out}}
>  {{  return new Node[0];}}
>  {{ }}}
> }
> and what happens is that the ListView / TreeTableView GUI does *not* show only the allowed nodes. It shows all the original children for a split second then it shows the filtered nodes.
> See the attached screenshot and video for a general idea. I'm also going to attach a small project.  
> Oddly enough Children.Keys(boolean lazy) [http://bits.netbeans.org/dev/javadoc/org-openide-nodes/org/openide/nodes/Children.Keys.html#Keys-boolean-] does mention a "dummy" Node but it was never clear what that is and I never imagined it could go all the way to the UI.
>  



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@netbeans.apache.org
For additional commands, e-mail: commits-help@netbeans.apache.org

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists