• Hello [name]! Thanks for joining the GMC. Before making any posts in the Tech Support forum, can we suggest you read the forum rules? These are simple guidelines that we ask you to follow so that you can get the best help possible for your issue.

 What if Chain View flowed down instead of right?

csanyk

Member
For reference, my screen resolution is 2048x1152. Like many users, I have a problem with workspace layout being too spread out.

Here's what my project looks like currently:

upload_2016-12-15_17-34-25.png

I could take some actions to make this fit a little bit better:
upload_2016-12-15_17-36-35.png

At least here the code editor doesn't overflow the workspace area. I can see the bottom of the code editor, which is vital for me to be able to read the signature of the function I'm coding, so I don't have to memorize the arguments and get them in the correct order. I also don't have to scroll to the right to see the end of long lines of code. But this code window STILL only takes up maybe a quarter of the total area of the window, and this is not good if I have a long script.

Note that I don't have ANYTHING in the right-hand dock, and if I did, the IDE becomes much more cramped:
upload_2016-12-15_17-43-10.png

My biggest gripe with scrolling is horizontal scrolling. When I have to horizontal scroll, it's back and forth, every time I go down a line of text. Vertical scrolling, I scroll down occasionally when I need to page down a bit. Vertical scrolling is not nearly as irritating as horizontal scrolling, so if we can eliminate horizontal scrolling, it will be a huge win.

That brings us to my suggestion: add the option to flow Chain Views down rather than right.

Here's a mock-up:

upload_2016-12-15_22-49-4.png

The advantage here is that the Chain becomes narrow, and so it will fit in a narrower Workspace region without overflowing horizontally, eliminating horizontal scrolling. I can easily scroll down vertically to bring the entire code editor into view, and make the code editor as wide and tall as the viewpane for the workspace, effectively maximizing it, which makes me comfortable, and takes less set up to get comfortable and be productive.
 

Attachments

Last edited:

psyke

Member
On the screenshot you showed above, you're not even using the room editor, just hide the left side panel.
And you DON'T have to scroll horizontally, just double click the window caption bar and it will center the window in the workspace.

ss.jpg
 

csanyk

Member
The room editor is just a placeholder. We could put the resource viewer there instead.

But your point does raise another criticism that I've made about workspaces, which is that the side dock doesn't keep context-relevant to what's going on in the workspace.

The side-docks really should be part of a workspace, so that each workspace is essentially the full-pane region of the main window, just one tab in the main window under the menu bars, with left, right, center, and bottom dockable regions in each.
 
Last edited:

psyke

Member
The Resource Tree is already on the right on your screenshot, why would you have 2 Resource Tree panels?
And the DOUBLE CLICK still works no matter how big the side panels are, this solves the horizontal scrolling issue.

About the context-relevant, I agree with you on this, they need to fix that, could speed up the workflow.
 

HermitPal

Member
I kind of like the GMS 2 horizontal work space/work flow but I hey I guess I'm in the minority :p

I would however really like it whenever I go to the workspace it would hide the room editor. I just leave the room editor open when working in the work space because Its tiresome going back and forth opening and closing the tab.

This however makes the work area much smaller then what was *i believe* intended.
 

csanyk

Member
The Resource Tree is already on the right on your screenshot, why would you have 2 Resource Tree panels?
And the DOUBLE CLICK still works no matter how big the side panels are, this solves the horizontal scrolling issue.

About the context-relevant, I agree with you on this, they need to fix that, could speed up the workflow.
You're missing the point a bit. The dock regions are there to be used. Show/hiding them can save space, but I've never cared for that sort of option in other IDEs. It just makes the whole UI jump around when you roll up one of those docks, and my mouse muscle memory likes things to stay still. It's really only a useful thing if you are on a small monitor and have to do everything you can to make the most out of the screen resolution you have.

You don't *have* to use every dockable region, of course, so you can save space by only using the left (or right) dock, or by using neither of them... but that decision should not be *forced* on the user based on their wanting to fit an editor into the workspace pane with minimal scrolling, *if* there were another arrangement possible to make the editor fit in the workspace a different way. Currently, there's no option to flow chain view objects in another direction. There really should be no objection to providing more options.

Keep in mind, my screen is 2048 wide. What if it was only 1280?

Double clicking to shift focus is well and good (and thanks for that tip, it's something I didn't know about, and I will find it useful), but I still don't want to have to use more width than needed, and to arrange my workspace in a way that works for me.
 
Last edited:

psyke

Member
We read from left to right, that's why the chains works like that. In Unreal Engine 4 you don't view the blueprints in vertical, because that would be just plain weird.
More options means more work, and more work means more bugs to fix, that's why they cannot simply add an option if there are no demand for it. I still don't get it, you have all these problems using a higher resolution than mine, why is that?

A simple "F12" can hide all the panels and focus your attention on the workspace.
CTRL+TAB can switch between the windows
CTRL+ALT+ARROWS can take you to any window in the workspace.

That's why you should not limit yourself to use only your mouse.
 

csanyk

Member
We read from left to right, that's why the chains works like that. In Unreal Engine 4 you don't view the blueprints in vertical, because that would be just plain weird.
More options means more work, and more work means more bugs to fix, that's why they cannot simply add an option if there are no demand for it. I still don't get it, you have all these problems using a higher resolution than mine, why is that?

A simple "F12" can hide all the panels and focus your attention on the workspace.
CTRL+TAB can switch between the windows
CTRL+ALT+ARROWS can take you to any window in the workspace.

That's why you should not limit yourself to use only your mouse.
We also read top to bottom. We read narrow columns of text faster than very wide ones. Especially when you have to scroll horizontally.

This really isn't a question of whether one should "properly" prefer to use the keyboard shortcuts or mouse shortcuts. It's about how to make the mouse experience optimal.

For one thing, newbies always use mouse UI before they learn about keyboard shortcuts. Keyboard shortcuts are for more advanced users who have spent time and taken a while to become very familiar with the interface, and who have memorized the shortcuts for actions that they use the most. GMS has a history of being geared toward beginner programmers, while still being flexible and powerful enough for more advanced users.

I keep saying it, keyboard navigation isn't a fix for the issues with mouse navigation. It's an alternative navigation. Using an alternative isn't fixing a problem, it's working around it. It may well be that it's faster to use keyboard shortcuts, and I'm not debating that. I'm making the point that the mouse navigation could be improved.

I really do love keyboard shortcuts, and I do use them as frequently as I'm able. My head simply won't fit every last one, and there's only so much I can learn and keep in my head. Beyond that, certain keystrokes are easy for me to hit. I can't easily find the F12 key on my keyboard without looking for it. But I can mouse without looking at my mouse. So for the more obscure keyboard shortcuts, it's debatable whether it's really faster to hunt for the proper key vs. using the mouse. Bottom line, I use the mouse a fair bit, and I want that experience to be better than it is right now, and ideally I want it to be the best that it can be, and I will always want that, regardless of whether using the keyboard instead is the "superior" method that all the best programmers prefer.
 
Last edited:

icuurd12b42

TMC Founder
GMC Elder
What if it cascaded instead
Actually what it is allowed us moving **** around and remembered where we like each window to be? we could design our own layout! left, right bottom down... cascading...

And guys, you should really post this stuff in the Hits and Misses topic :)
 

csanyk

Member
What if it cascaded instead
Actually what it is allowed us moving **** around and remembered where we like each window to be? we could design our own layout! left, right bottom down... cascading...
I thought about being able to position windows exactly where you want them, and to me, it seemed like that would just involve more click and dragging, and positioning things by hand every time you open up a new object. Compared to having two layouts: chain-right and chain-down, which really are the only two layouts that make any sense, and they just rigidly open to a position that is properly spaced and aligned, and that's everything I'd want or need, without any extraneous hand-placement.

I don't expect that this would take a great amount of effort to program, test, or debug. Someone always raises that objection, and tries to claim that other work always should take higher priority. But really this is a pretty small change, if it breaks the existing code that badly that it's hard to implement, test, or debug, then their codebase is already garbage and they should just fold the company up and not be professional software developers anymore. I don't buy that argument at all. All that is required is:
  • to add an option in the Preferences to use chain-right or chain-down
  • Add menu items to change from one layout to another
  • calculations to know where to position the sub-editor windows in chain-down view
  • some drawing routines to draw the chain in chain-down view
If that even took a day to implement, I'd be surprised.

And guys, you should really post this stuff in the Hits and Misses topic :)
Is Hits and Misses an official thread for IDE feedback? I know some ideas have been discussed in that thread, but I posted this idea in its own thread because I wanted it to be considered on its own merits, and also I didn't want to distract the conversation going on about the ideas already being talked about there.
 
I (personally) think the current workspace workflow makes sense. You add new "parts" (sprites, objects, etc.) the newest one goes beneath the older one. This becomes the standard horizontal stack and, thus, the thinking would be that you scroll horizontal to go back and forth between assets (if you're not using the keyboard shortcuts, obviously). Vertically? Well, that's for adding onto already existing assets ... events to objects, etc. So, up/down? Scroll between assets. Left/right? Scroll between what is being done to a particular asset.

This is just my opinion, of course. No right or wrong here. But personally I think that making the chained areas also horizontal would make mouse navigation more tedious as everything would be stacked up/down on top of each other.
 

csanyk

Member
I (personally) think the current workspace workflow makes sense. You add new "parts" (sprites, objects, etc.) the newest one goes beneath the older one. This becomes the standard horizontal stack and, thus, the thinking would be that you scroll horizontal to go back and forth between assets (if you're not using the keyboard shortcuts, obviously). Vertically? Well, that's for adding onto already existing assets ... events to objects, etc. So, up/down? Scroll between assets. Left/right? Scroll between what is being done to a particular asset.

This is just my opinion, of course. No right or wrong here. But personally I think that making the chained areas also horizontal would make mouse navigation more tedious as everything would be stacked up/down on top of each other.
The nice thing about my suggestion is that rather than forcing one layout or another, it gives the user the option to pick their preference. No right or wrong way to do it, as you say, but let the user pick. Me, I would prefer a more vertical option if it meant no horizontal scrolling. Others, I'm sure, would prefer to work a different way. The problem that I have with horizontal scrolling is there's no easy way to do it. I can mouse wheel up/down, but to horizontally scroll I have to Middle-click+drag.

Rather than having horizontally laid out sub-forms, they could have chosen to compact things by using a tabbed view. But tabs probably were rejected because one tab always covers all the others, and chain view lets you see everything (provided your monitor's big enough) in a flat view, and also has uniqueness and feels innovative and looks cool. And I do like to be able to see all the different sub-forms all at once. There's no denying that chain view looks cool; I just find it to be less usable than I'd like it to be, and I know a lot of other users are voicing similar concerns. So I think it's worth bringing out all these ideas and seeing if YYG will go for any of them.
 
The nice thing about my suggestion is that rather than forcing one layout or another, it gives the user the option to pick their preference. No right or wrong way to do it, as you say, but let the user pick. Me, I would prefer a more vertical option if it meant no horizontal scrolling. Others, I'm sure, would prefer to work a different way. The problem that I have with horizontal scrolling is there's no easy way to do it. I can mouse wheel up/down, but to horizontally scroll I have to Middle-click+drag.

Rather than having horizontally laid out sub-forms, they could have chosen to compact things by using a tabbed view. But tabs probably were rejected because one tab always covers all the others, and chain view lets you see everything (provided your monitor's big enough) in a flat view, and also has uniqueness and feels innovative and looks cool. And I do like to be able to see all the different sub-forms all at once. There's no denying that chain view looks cool; I just find it to be less usable than I'd like it to be, and I know a lot of other users are voicing similar concerns. So I think it's worth bringing out all these ideas and seeing if YYG will go for any of them.
I agree. Preferences are good. But I don't understand why a middle mouse click + drag is so ... difficult ... to do to move about the work space. But perhaps, for me, this comes from years of working in graphics apps where you are constantly panning around the work space (typically with a mouse click/drag while holding the space bar down) while working on very large images or models up close.

I do absolutely agree that too much screen real estate is being used up by the current chain view. I don't see any reason why these chained areas can't be a heck of a lot closer together or even butted up against each other. It's a waste of space, no matter how large or small someone's monitor is.
 
S

Skywolf

Guest
If I remember correctly, there was a setting in preferences for spacing. Between columns AND rows, which suggests that chains do go down?
 

Llama_Code

Member
If I remember correctly, there was a setting in preferences for spacing. Between columns AND rows, which suggests that chains do go down?
The space between rows affects stacked chains from a single window, like if you open an object and click events, parent, and physics, all three windows open to the side of the object window stacked vertically, so that setting changes the space between them.
 

csanyk

Member
I agree. Preferences are good. But I don't understand why a middle mouse click + drag is so ... difficult ... to do to move about the work space. But perhaps, for me, this comes from years of working in graphics apps where you are constantly panning around the work space (typically with a mouse click/drag while holding the space bar down) while working on very large images or models up close.

I do absolutely agree that too much screen real estate is being used up by the current chain view. I don't see any reason why these chained areas can't be a heck of a lot closer together or even butted up against each other. It's a waste of space, no matter how large or small someone's monitor is.
Middle click isn't so hard, unless you're on a laptop that doesn't happen to have a middle mouse button. A lot of desktop mice also do have middle click buttons, but often these are disguised as the mouse wheel, and aren't as well known to users.

My instinct when I want to scroll right/left is to use the arrow keys. Up, Down usually do scroll up and down, or at least move a cursor up and down, and when the cursor gets to the top or bottom of the window, it will scroll. But right-left don't really work that way in most applications, and they don't work at all for horizontal scrolling in a GMS2 workspace.

At any rate, it isn't that it's particularly *hard* to scroll horizontally, it's that for a wide window, you have to scroll each and every line as you read. You get toward the right side of the view pane, then you can't read any more since the text flowed outside of the pane, so you scroll to the right. Then you get to the end of the line, and have to go down to the next line, which is now off to the left of the view pane, so you have to scroll left. You end up scrolling right/left every single line. That is a lot of scrolling, a lot of work, and it doesn't matter how you do it, it sucks. Whereas vertical scrolling, you get a whole page of reading in, then you get to the bottom of the page, then you scroll a page or a paragraph or a few lines worth, and you can read for a while before you need to scroll again. It's a little bit of scrolling once in a while, usually by an easier input method, and it does not suck.

With GMS2 workspaces, the main problem that I have is that the workspace pane takes up a fraction of the window, maybe 1/4 or 1/3 of the total area of the window is taken up by the workspace pane, docked in the center dockspace. So that region is already small, which means I'm gonna have to scroll around. On top of that, an Editor that is open in the workspace doesn't maximize to fill the view pane of the workspace. Rather, it sits floating in the workspace. And if I expand it, it expands horizontally, meaning some horizontal scrolling, which is more costly than vertical scrolling in terms of both time and amount of input needed. And by the time I open up a code editor window, I'm at the far right, and then the code editor always opens up too large to fit within the area of the workspace's view pane, meaning it overflows, so I can't see the entire code editor. It's more scrolling up/down and often right/left to see the far ends of the code editor window. And that sucks.

Ideally I'd like to just open a code editor window, hit Windows-RightArrow or Windows-Left Arrow and have the editor window fill fully half the space of my display, and not have any corner of the code editor window be off the edge of the screen, and then I can just type away.

In a workspace UI, the workspace becomes a small window within the main window, which I use to view several other windows, all of which are spread out so they don't overlap, which means lots of scrolling. (Yeah, I know there's keyboard shortcuts that can help with this; I've explained why that's not adequate for me in other posts.) All that scrolling means time, and all that window-within-window means a less space-efficient IDE which nullifies much of the advantage of having a large-resolution display. It's clearly not the most efficient way of using the space, and makes me less efficient because I end up spending much more time navigating and scrolling than I do working, and that's the opposite of what should be the intended result of the design. I end up fighting the UI design, and the UI design is supposed to work with me, getting out of my way so I barely even think about it, and allow me to just crank out work.
 
Last edited:

icuurd12b42

TMC Founder
GMC Elder
I thought about being able to position windows exactly where you want them, and to me, it seemed like that would just involve more click and dragging, and positioning things by hand every time you open up a new object.
No, you misunderstood I think.
you open a worflow chain, then open a script or another window related to that chain . there are only like 3 windows in context to a work chain
you move those windows to where you want them. Maybe there's a "set as my layout button" somewhere or maybe it assumes this is what you want
the next time you open a chain it opens the way you laid items out

>Is Hits and Misses an official thread for IDE feedback? I know some ideas have been discussed in that thread, but I posted this idea in its own thread because I wanted it to be considered on its own merits, and also I didn't want to distract the conversation going on about the ideas already being talked about there.

No, but it's being watched by yyg :)
 

csanyk

Member
No, you misunderstood I think.
you open a worflow chain, then open a script or another window related to that chain . there are only like 3 windows in context to a work chain
you move those windows to where you want them. Maybe there's a "set as my layout button" somewhere or maybe it assumes this is what you want
the next time you open a chain it opens the way you laid items out
Oh, I see. I guess that would be alright. I don't see it as having a dramatically better advantage over what I was suggesting, though.
 
C

Claire

Guest
>Is Hits and Misses an official thread for IDE feedback? I know some ideas have been discussed in that thread, but I posted this idea in its own thread because I wanted it to be considered on its own merits, and also I didn't want to distract the conversation going on about the ideas already being talked about there.

No, but it's being watched by yyg :)
Actually please don't post all issues in one thread, it makes it far more difficult to keep track of the issues being reported and your post is more likely to be missed if it's in an uber-thread. Rest assured we are looking at the entire GMS2 sub-forum not just one thread.
 

Jobo

Member
GMC Elder
And guys, you should really post this stuff in the Hits and Misses topic :)
I stopped reading the Hits and Misses topic a long, long time ago (in a galaxy far far away). Now I'm so out of sync with it I just don't care.

No, but it's being watched by yyg :)
This entire subforum is being monitored by many people on the team, and a 1-line topic title summarizing a problem is a lot more attractive than digging up post #286 in a 350-post thread.
 

csanyk

Member
If I remember correctly, there was a setting in preferences for spacing. Between columns AND rows, which suggests that chains do go down?
Workspaces can have rows; open multiple objects in a single workspace, and they line up in rows. Each individual Object Editor spreads itself out to the right when you expand it in chain view. I can find no way to move chained UI panels around, repositioning them relative to their parent window. The preference for the row spacing merely allows you to determine the amount of spacing between two open Editors in the same workspace.
 
Top