View Issue Details

IDProjectCategoryView StatusLast Update
0020120mantisbtbugtrackerpublic2016-12-30 14:07
Reportercproensa Assigned To 
PrioritylowSeveritytweakReproducibilityalways
Status newResolutionopen 
Product Version1.3.0-beta.3 
Summary0020120: my view page boxes layout
Description

I found in "my_view_page.php"
inconsitent code against comments, for the layout of boxes

Current layout is boxes layered in one column.
From the comments, seems like proper layout is two boxes for each row (which is the layout in 1.2.x)
(se attached images for current and intended layout)

This happens when having the setting:


/**

  • Toggle whether 'My View' boxes are shown in a fixed position (i.e. adjacent
  • boxes start at the same vertical position)
  • @global integer $g_my_view_boxes_fixed_position
    */
    $g_my_view_boxes_fixed_position = ON;

Fix is trivial if you can confirm

TagsNo tags attached.
Attached Files
myview_current.png (59,696 bytes)   
myview_current.png (59,696 bytes)   
myview_intended.png (85,968 bytes)   
myview_intended.png (85,968 bytes)   
myview-1.2x-atrol.jpg (83,517 bytes)   
myview-1.2x-atrol.jpg (83,517 bytes)   
3columns.png (157,825 bytes)   
3columns.png (157,825 bytes)   

Relationships

related to 0022095 closeddregad Inconsistent number of "My View boxes" columns 

Activities

atrol

atrol

2015-09-17 02:41

developer   ~0051485

Some thoughts to discuss with some more developers:

I don't like the timeline that much as it takes a lot of space and enforces some vertical scrolling.

I am running one of my production environments using 1.2.x.
I configured $g_my_view_bug_count = 5; to have a nice layout for developers with two columns and three rows of boxes to get a quick overview without any need for vertical scrolling.
Have a look at the attached screen shot myview-1.2x-atrol.

Nowadays most of the current displays have a width screen layout.
So I think a three columns layout in 1.3.x could work if
a) the horizontal space between the boxes and the timeline is reduced a bit.
b) the horizontal space on the left side of the boxes and the right side of the timeline is reduced

Not sure if we can have it the same way in 2.0 as we need some horizontal space for the new navigation bar at the left.

BTW there is a PR for 1.3.x to have a configuration to deactivate the timeline
https://github.com/mantisbt/mantisbt/pull/592
Unfortunately not in a way that a 2-columns display is used if the timeline is deactivated.

atrol

atrol

2015-09-17 02:42

developer   ~0051486

Reminder sent to: dregad, rombert, syncguru, vboctor

Thoughts?

cproensa

cproensa

2015-09-17 03:54

developer   ~0051487

I think the Timeline is better suited to reporters than developers. In my site reporters have its view limited to their own issues, so Timeline would be a great tool to keep them updated.
However, once the user has a higher access level (eg developer), the list gets too crowded to be useful. Thats my perception.

For that reason, a view threshold seems not to be the best approach, unless it works backwards, like a "hide" threshold.
A better approach would be to make it user configurable, along other my_view options: timeline on/off, 1/2/3 columns layout, enable/disable desired boxes, include stored filters as available boxes...

dregad

dregad

2015-09-17 04:23

developer   ~0051488

I personally use the timeline a lot, and it does not bother me so much that it takes a lot of vertical space. I don't remember off-hand if the number of displayed items is configurable or not, but if not maybe it's a feature that could be added.

That being said, I agree it would be nice to allow boxes layout on 2 columns, if the display area allows it. Ideally, this layout should be automatic, i.e. adjust based on screen width.

a) the horizontal space between the boxes and the timeline is reduced a bit.

Currently, this space is proportional to the screen's width (no time to check the code to determine if and how this could be changed). Maybe syncguru who is better at this CSS stuff than I am, can comment.

b) the horizontal space on the left side of the boxes and the right side of the timeline is reduced

This comes from the "content" div which adds padding. Should not be a big deal to change

BTW there is a PR for 1.3.x to have a configuration to deactivate the timeline

I agree with that, but as I said [1] this PR can't be merged as it is because of the 1-column layout which does not look good.

[1] https://github.com/mantisbt/mantisbt/pull/592#issuecomment-93680455

cproensa

cproensa

2015-09-17 04:29

developer   ~0051489

That being said, I agree it would be nice to allow boxes layout on 2 columns

But note that whith
$g_my_view_boxes_fixed_position = OFF;
there is a 2 columns layout

The bug seems to be that when option is ON, its not setting correctly the rows, columns, whis is also intended to be two columns (the comments in code says so). The fixed result is on my screenshot previously attached

atrol

atrol

2015-09-17 05:08

developer   ~0051490

Last edited: 2015-09-17 05:18

I never missed a timeline as there is the "Recently Modified" box which is triggered by ALL modifications.
The timeline does not show all modifications (e.g. some status changes are filtered out, changes in relationships are not displayed, ...)

The bug seems to be that when option is ON, its not setting correctly the rows
I am quite sure that the one columns display is what vboctor wanted when introducing the timeline.
But cproensa you are right, the number of columns should not depend on my_view_boxes_fixed_position.

So the question at least for 1.3.x is:
2 or 3 columns.

I tried a bit and found that I prefer 3 columns.
Thus +1 for what cproensa wants to change.

I added $g_my_view_boxes_fixed_position = OFF; temporary to our configuration to get a real life feeling for the layout.

cproensa

cproensa

2015-09-17 05:15

developer   ~0051491

This is the code for case $g_my_view_boxes_fixed_position = ON
Dont known what vbcotor intended, but code and comments are not coherent:
(Modified is to show the 2 columns)


@@ -131,10 +131,10 @@ while( list( $t_box_title, $t_box_display ) = each( $t_boxes ) ) {

for even box number start new row and column

            echo '<tr><td class="myview-left-col">';
            include( dirname( __FILE__ ) . DIRECTORY_SEPARATOR . 'my_view_inc.php' );
  • echo '</td></tr>';
  • echo '</td>';
    } else if( 0 == $t_counter%2 ) {

    for odd box number only start new column

  • echo '<tr><td class="myview-right-col">';
  • echo '<td class="myview-right-col">';
    include( dirname( FILE ) . DIRECTORY_SEPARATOR . 'my_view_inc.php' );
    echo '</td></tr>';
    }
atrol

atrol

2015-09-17 05:35

developer   ~0051492

Added a screenshot 3columns.png how it looks on an old school 1280x1024 display.
Not that bad and acceptable if the marked 1,2,3,4 are reduced.

dregad

dregad

2015-09-17 10:15

developer   ~0051493

The "3 columns" layout causes display problems on narrow screens (column 2 overlaps with timeline), as shown in attached mantisbt_myview_2cols_overlap.png

atrol

atrol

2015-09-17 10:43

developer   ~0051494

Last edited: 2015-09-17 10:51

It does no longer overlap if you make the window even smaller.
This is the so called "Nearly Responsive Design" ;-)

Seems we shouldn't introduce the "3 columns" layout without some CSS tweaks.

BTW, I added just $g_my_view_boxes_fixed_position = OFF; but didn't apply the patch.
Not sure how this affects the behaviour.

vboctor

vboctor

2015-09-21 23:24

manager   ~0051514

I'm OK with 3 column layout. However, as mentioned above we should do a better job with CSS and being responsive as the window is smaller or MantisBT is visited on a mobile phone.

Long term, I would like us to think of My View page as a Dashboard page that is basically a grid of 3 columns. The following components are placed on such grid.

  • issue boxes - these are similar to the boxes we have now.
  • graphs - should take realestate similar to an issue box, but would contain a graph.
  • timeline - this is the timeline we have now.

The trick with the above is providing an easy way to customize the view that ideally would support default and per user configurations. Bunch of that will have to depend on the modern responsive UI + some fancy ajax + javascript.