If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

General discussions about Inkscape.
Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Mon Jul 23, 2018 12:30 am

Oh, no, we need people's help to do this first :) It's going to be a long process, and Inkscape will need help with it.
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

v1nce
Posts: 677
Joined: Wed Jan 13, 2010 4:36 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby v1nce » Mon Jul 23, 2018 8:34 am

Filter editor sucks (buggy (id messing) and UI is really bad)

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Mon Jul 23, 2018 9:48 pm

@v1nce Thank you for your suggestion. Would there be anything specific that you would like to see changed? 'Sucks' and 'UI is bad' are very general descriptions.
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

v1nce
Posts: 677
Joined: Wed Jan 13, 2010 4:36 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby v1nce » Tue Jul 24, 2018 4:35 am

Moini wrote:@v1nce Thank you for your suggestion. Would there be anything specific that you would like to see changed? 'Sucks' and 'UI is bad' are very general descriptions.


There's a wiki that is 7 years old of what the spec filter editor should be
http://wiki.inkscape.org/wiki/index.php ... erEditorUI

and even when/if we reach this, we will still be years after node-based generator
https://d2.alternativeto.net/dist/s/fil ... 6_full.jpg
https://www.blendernation.com/2018/06/2 ... e4-shader/

that already existed when the mockup was made.

A HTML node based editor : http://victhorlopez.github.io/editor/

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Tue Jul 24, 2018 8:04 am

@v1nce Maybe you'd like to join Lazur to design a UI that would fit well with Inkscape? You'd also need to consult with a dev (if you're not a Gtk dev yourself, I have no idea), so you can know what is possible within the toolkit Inkscape is using. Lazur would know whom to contact.
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Sat Jul 28, 2018 11:34 pm

For those interested in changing the filter editor interface:

When updating the release notes, I noticed that actually, the filter editor interface *is* already editable by people without programming knowledge. The release notes draft says it's already using a glade file, and I can confirm that there is one that can be opened with Glade (although I have no idea how to use it).

So if anyone wants to get their hands dirty:
  • contact Marc Jeanmougin (aka Mc), and ask for a quick overview about:
    - what can be changed
    - the general steps that are needed to make the change
  • install Glade from https://glade.gnome.org/
  • read up on documentation for using Glade: https://wiki.gnome.org/action/show/Apps ... FTutorials
  • download or compile the development version for your operating system (I can assist with that, if it's on Ubuntu- or Debian-based Linux systems, or if it's just about installing)
  • Start playing with it!
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

User avatar
Xav
Posts: 1122
Joined: Fri May 08, 2009 1:18 am
Location: UK
Contact:

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Xav » Sun Jul 29, 2018 10:02 pm

Moini wrote:I noticed that actually, the filter editor interface *is* already editable by people without programming knowledge. The release notes draft says it's already using a glade file


I played around with Glade quite a few years ago, so my information could be well out of date, but I don't think the sort of redesign people are looking for will be possible just by modifying a Glade file. Glade is a UI designer - so it lets you put a text field here, a checkbox there, and so on. The resultant file describes the UI layout quite specifically.

But the big problem with the filter editor is that it's limited to that vertical list of filter components, which makes it really unintuitive to create complex chains by linking together smaller groups of components. It's trying to force a two-dimensional graph into a one-dimensional UI.

Here's an example from part 50 of my tutorial series. During the instalments about filters I often drew node-editor style images to explain what was happening in a filter chain, because the Inkscape UI is too impenetrable. In filter terms this one's pretty simple - just four filter components - but even here it's easier to follow the node-style UI than the Inkscape one:

filter_node_UI.png
filter_node_UI.png (40.33 KiB) Viewed 1090 times


filter_linear_UI.png
filter_linear_UI.png (12.84 KiB) Viewed 1090 times


In a node-based UI it would be possible to just add filter components (blue in my image) and input sources (green) anywhere on the canvas, then join any output to any unused input with a connecting line. Selecting a component would bring up a dialog for editing its parameters (not shown) and, ideally, hovering over an output node or a connector would show what the image looks like at that point in the filter chain (grey).

This is a proper programming task, not something that can be done with Glade alone. You need the sort of programmers who know how to draw objects at arbitrary positions on a canvas, and join them together with connectors. I wonder where we might find some of those? ;)
Co-creator of The Greys and Monsters, Inked - Inkscape drawn webcomics
Web SiteFacebookTwitter

Lazur
Posts: 4578
Joined: Tue Jun 14, 2016 10:38 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Lazur » Mon Jul 30, 2018 12:35 am

^-in addition, we are talking about filter definitions stored in the drawing file -svg.
Which would then also need to store the layout of the filter chain editor. Like a complete dynamic/responsive svg stored within the svg defs section...
My guess is the svg specs doesn't suit this task so well either.

v1nce
Posts: 677
Joined: Wed Jan 13, 2010 4:36 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby v1nce » Mon Jul 30, 2018 1:41 am

This can't be done in glade.
It needs a custom gtk component.
Maybe this https://github.com/GNOME/graph-gtk

User avatar
Xav
Posts: 1122
Joined: Fri May 08, 2009 1:18 am
Location: UK
Contact:

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Xav » Mon Jul 30, 2018 3:13 am

Lazur wrote:^-in addition, we are talking about filter definitions stored in the drawing file -svg.
Which would then also need to store the layout of the filter chain editor. Like a complete dynamic/responsive svg stored within the svg defs section...
My guess is the svg specs doesn't suit this task so well either.


I'm not sure it needs to store that much additional layout data. Assuming each filter component always takes the same basic form of one or more inputs on the left, an output on the right, and the parameters handled via a dialog or popup, only the x/y coordinates of the top left of the component need to be stored - which could just be namespaced as a pair of attributes in the filter component in the SVG.

If it only used automatic routing for the connectors, there's no need to store data about those as they can be regenerated based on the filter chain. The only thing left are the input and output nodes but, again, if they're of a fixed format there's not much data about them that needs to be stored (coordinates, and which input in the chain each one corresponds to). There will, I'm sure, be some other editor data to store, but I don't see that keeping any of the layout data in the file is a big deal.

@v1nce - good find, that looks rather interesting and (based on the description) exactly the sort of thing that's needed.
Co-creator of The Greys and Monsters, Inked - Inkscape drawn webcomics
Web SiteFacebookTwitter

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Mon Jul 30, 2018 6:46 am

Glad I got you talking filter editor again (personally, I can't really say much about it, it's not a part of Inkscape that I use for more than for extending the filter region if it has shrunk for some ominous reason). This sounds really productive.

The more info you can assemble, the easier it will get to implement it.
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

Lazur
Posts: 4578
Joined: Tue Jun 14, 2016 10:38 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Lazur » Mon Jul 30, 2018 8:50 am

Well I assume we who rigged filters in inkscape also seen filterforge.

The layout needs to be zoomable, components preferably groupable, cloneable, duplicate-able and there also needs to be space for labeling preferably.


Other node-based editor which can be experienced by hand is within blender.

While I'm not familiar with the available functionality and as my general observation, cycles renders slow as hell, blender has it all.
A decent gui that can be zoomed in, colours adjusted of the panels in easy steps, on an open and running instance, every part can be rearranged, multiple viewports added in, and -a decent looking node-based editor.


The best node based editor I've seen is in grasshopper though.
Too bad there is no foss alternative.

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Tue Jul 31, 2018 7:31 am

I think it's best to start small, then improve. Everything else will overwhelm the person who is asked to work on it.
So, think, what would be the minimum, yet still extensible version? It's all about smart planning.
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

User avatar
brynn
Posts: 9962
Joined: Wed Sep 26, 2007 4:34 pm
Location: western USA
Contact:

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby brynn » Tue Jul 31, 2018 9:53 am

Yes, v1nce and Lazur!

Please give it a try! I'll do anything I can to help (although doubt if that amounts to much, if anything). Although I could help with testing for sure.

I had a look at the Glade webpage, in case there might be a wysiwyg component, or maybe I could figure it out. Based on the tutorial introduction (which is written for complete beginners) it looks like I could probably figure out most of it. But it would take SO very much longer for me, who has never coded anything more than a simple html webpage, than someone who has at least a simple project under their belt.

Plus, since I haven't really figured out how filters are made, I wouldn't be able to imagine a good interface. And that tutorial starts with sketching out an interface on paper.

Maybe we should have a group discussion (here, or somewhere) about what a good filter editor interface looks like?

User avatar
Xav
Posts: 1122
Joined: Fri May 08, 2009 1:18 am
Location: UK
Contact:

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Xav » Tue Jul 31, 2018 5:35 pm

Moini wrote:I think it's best to start small, then improve. Everything else will overwhelm the person who is asked to work on it.
So, think, what would be the minimum, yet still extensible version? It's all about smart planning.


The trouble is, I don't think there is a "start small" option. Start smaller, by omitting things like grouping, and duplicating, maybe - but it would still be better to write the code with grouping in mind, and duplicating comes almost for free anyway.

The smallest option still boils down to a canvas to which it's possible to add source nodes (all the same size) and component nodes (which will vary in size and, in some cases, will need to adjust the number of inputs on the fly), each with inputs on the left and outputs on the right. There would be a single output node, but this could potentially be fixed. Then there needs to be the capability to connect outputs to inputs, allowing for the same output to be used more than once.

Selecting a component would allow its properties to be edited. For the minimal version this could be through a separate dialog, in traditional GTK style, which would be simpler to implement. Selecting a connector should, at a minimum, allow it to be deleted.

The canvas must be scrollable to accommodate long or complex filter chains. It should also be zoomable for the same reason; this might not be essential in a "minimal" version, but if it's not accounted for at the start will likely be difficult, if not impossible, to retrofit.

Once all that's in place, the code also needs to take whatever arrangement the user has created and convert it into SVG code. Whilst it's not a conceptually difficult task, I'm sure it's not a trivial one to code, either. At this point the code should, at least, store the x & y coordinates of each node to allow for round-tripping.

There would likely be a toolbar from which to pick the nodes to add, with a drop-down to select which filter in the file to work on. Selecting a different filter should save the current state as-is, even if it isn't yet a "complete" filter chain (e.g. doesn't connect to the output node).

There is an open question about what to do when loading a file with existing filters. Ideally there would be an automatic layout algorithm to present a reasonable arrangement for the filter chain, but that's another tricky programming task. A layout algorithm that just prevents nodes sitting on top of each other would be an okay start - but would likely lead to poorly laid out connectors.


I reckon that's the minimum needed for a node-based UI. But even that is an overwhelming task for a programmer. When's the next Google Summer of Code ;)
Co-creator of The Greys and Monsters, Inked - Inkscape drawn webcomics
Web SiteFacebookTwitter

v1nce
Posts: 677
Joined: Wed Jan 13, 2010 4:36 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby v1nce » Wed Aug 01, 2018 4:02 am

> and duplicating comes almost for free anyway.

Right now it doesn't. The current editor is (was ?) very bad at duplicating nodes. I guess it messes with the id.

There's no "start small" option, all the features described by Xav are the minimal core of a node editor (grouping).

We can add features (reuse of group as template) but we can't remove.

v1nce
Posts: 677
Joined: Wed Jan 13, 2010 4:36 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby v1nce » Wed Aug 01, 2018 8:49 am

> There is an open question about what to do when loading a file with existing filters. Ideally there would be an automatic layout algorithm to present a reasonable arrangement for the filter chain, but that's another tricky programming task. A layout algorithm that just prevents nodes sitting on top of each other would be an okay start - but would likely lead to poorly laid out connectors.

The webcola.js library http://marvl.infotech.monash.edu.au/webcola/
propose layout algorithms that can deal with grouping and even nesting http://ialab.it.monash.edu/webcola/exam ... roups.html

It seems that this is a port of cola c++ library a LGPL library
http://www.adaptagrams.org/
that is supposed to be used in inkscape.

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Fri Aug 03, 2018 2:12 am

As this discussion seems to have reached its goal of collecting topics, and is now veering off into other topics (which is okay), I think it's a good time for summarizing your suggestions now for devs, which I have done now.

@Xav, for your request for the drag&drop install, I think some effective improvement has already been made now by Jabier (note the 'Open' buttons):
Bildschirmfoto_2018-08-02_17-41-06.png
Bildschirmfoto_2018-08-02_17-41-06.png (106.22 KiB) Viewed 884 times


Here's your distilled list:
http://wiki.inkscape.org/wiki/index.php ... mbers_list
(please don't hit me for not including every suggestion - I left those out that are utopic, out of scope, or handled elsewhere already)
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

User avatar
Xav
Posts: 1122
Joined: Fri May 08, 2009 1:18 am
Location: UK
Contact:

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Xav » Fri Aug 03, 2018 2:40 am

Moini wrote:@Xav, for your request for the drag&drop install, I think some effective improvement has already been made now by Jabier (note the 'Open' buttons):


A definite improvement. In fact my first thought when suggesting this was that there should be Open buttons in that dialog, but then I figured that, as this is a wish list, why not shoot for the even more useful option of drag and drop that just does the right thing.

Regarding the filters UI, I'm happy to put together a more "formal" specification, if it's likely to be useful as a starting point. It'll take a few weeks, as I'll need to fit it in around my other commitments.
Co-creator of The Greys and Monsters, Inked - Inkscape drawn webcomics
Web SiteFacebookTwitter

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Fri Aug 03, 2018 2:54 am

The problem with the drag&drop is that it would require extension authors to all follow a specified format. While we can do that, it's likely to cause a lot of breakage and frustration... Although it might be that Inkscape now discovers extensions in subfolders... I faintly remember something like that... Let me check. Yes, it does :)

(at least the submenu is there, the extension itself is missing, because dependencies some folders up in their own folder cannot be detected... lol - doctormo!!!)
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

User avatar
Xav
Posts: 1122
Joined: Fri May 08, 2009 1:18 am
Location: UK
Contact:

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Xav » Fri Aug 03, 2018 5:14 am

Moini wrote:The problem with the drag&drop is that it would require extension authors to all follow a specified format.


Well, there is already a specified format, in that there's a config file that contains metadata about the extension (such as where to put it in the menus). All I was thinking was that extensions could be zipped up (and possibly given a different file extension). When such a zip file is dropped on the window, Inkscape would check it for the presence of the metadata file and, if present and correct, extract the zip into the user's extensions folder.

This wouldn't prevent extension authors distributing their wares in another way if they prefer - which might be necessary if there are other dependencies or anything else that prevents a simple "drop files in extension folder" type of installation - but would at least allow the possibility of them zipping them up for end users to just drag and drop if their extension is simple enough.
Co-creator of The Greys and Monsters, Inked - Inkscape drawn webcomics
Web SiteFacebookTwitter

Lazur
Posts: 4578
Joined: Tue Jun 14, 2016 10:38 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Lazur » Fri Aug 03, 2018 5:53 am

Moini wrote:(please don't hit me for not including every suggestion - I left those out that are utopic, out of scope, or handled elsewhere already)


Please for development's sake include more details on the lack of performance. No, it's not JUST grouing or the objects panel. It's everywhere.

A 2 MB vector file should load more or less on an instant and be dealth with easily. Cad softwares can easily handle 200 MB of vector stuff of much larger scale and precision. Considering it's "only for illustration purposes" or at least targeted to, "with benefits", it should work way better. On the very same machine! While on 10 MB large files with no raster content it's usually hanging what it is at the moment.

Applying an extension, like interpolating between two paths with 3 intermediate steps shouldn't take 10 seconds. Seemingly the same as interpolating with 50 intermediate steps. Something there is conceptually wrong behind the bonnet.

Selecting/deselecting paths with 10000+ nodes with the node editor -even if it may be fixed now, it'd be the perfect example on the rest. Lagging too much everywhere.

Starting up inkscape tooks a minute here now usually -blender fires up in a second.

Editing text lags beyond what's possibly could be dealth with. Even if layouting is more of scribus's territory, it's a joke.
They can't even be selected the same way as if they are converted to paths.

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Fri Aug 03, 2018 9:45 am

Lazur, have you adjusted the tiling parameters in the settings?
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)

Lazur
Posts: 4578
Joined: Tue Jun 14, 2016 10:38 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Lazur » Fri Aug 03, 2018 10:12 am

Moini wrote:Lazur, have you adjusted the tiling parameters in the settings?


What settings? In inkscape? Didn't remember there was any.

Or why the message is tiny? Just didn't want to hit it with a big strike. Would felt inappropriate since you specifically asked.
(By the way if you click the quote button you can read it in normal size.)

Moini
Posts: 2812
Joined: Mon Oct 05, 2015 10:44 am

Re: If you could choose 1 thing that must be implemented or fixed in Inkscape 1.0, what would it be?

Postby Moini » Sat Aug 04, 2018 12:15 am

Yes, I know, no worries! I just hoped to improve your 'user experience'.

I mean these:
(rendering cache size, render tile multiplier)

They are fairly new, so maybe you hadn't seen them.

Bildschirmfoto_2018-08-03_16-14-27.png
Bildschirmfoto_2018-08-03_16-14-27.png (39.46 KiB) Viewed 791 times
Something doesn't work? - Keeping an eye on the status bar can save you a lot of time!

Inkscape FAQ - Learning Resources - Website with tutorials (German and English)


Return to “General Discussions”

Who is online

Users browsing this forum: No registered users and 3 guests