@@ -94,28 +94,38 @@ meta_frame_layout_get_borders (const MetaFrameLayout *layout,
9494 borders -> visible .right = layout -> frame_border .right ;
9595 borders -> visible .bottom = layout -> frame_border .bottom ;
9696
97- borders -> invisible = layout -> invisible_border ;
98-
9997 draggable_borders = meta_prefs_get_draggable_border_width ();
10098
10199 if (flags & META_FRAME_ALLOWS_HORIZONTAL_RESIZE )
102100 {
103- borders -> invisible .left = MAX (borders -> invisible .left ,
104- draggable_borders - borders -> visible .left );
105- borders -> invisible .right = MAX (borders -> invisible .right ,
106- draggable_borders - borders -> visible .right );
101+ if (!(flags & META_FRAME_TILED_LEFT_EDGES ))
102+ borders -> invisible .left = MAX (layout -> invisible_border .left ,
103+ draggable_borders - borders -> visible .left );
104+ else
105+ borders -> invisible .left = 0 ;
106+
107+ if (!(flags & META_FRAME_TILED_RIGHT_EDGES ))
108+ borders -> invisible .right = MAX (layout -> invisible_border .right ,
109+ draggable_borders - borders -> visible .right );
110+ else
111+ borders -> invisible .right = 0 ;
107112 }
108113
109114 if (flags & META_FRAME_ALLOWS_VERTICAL_RESIZE )
110115 {
111- borders -> invisible .bottom = MAX (borders -> invisible .bottom ,
112- draggable_borders - borders -> visible .bottom );
116+ if (!(flags & META_FRAME_TILED_BOTTOM_EDGES ))
117+ borders -> invisible .bottom = MAX (layout -> invisible_border .bottom ,
118+ draggable_borders - borders -> visible .bottom );
119+ else
120+ borders -> invisible .bottom = 0 ;
113121
114122 /* borders.visible.top is the height of the *title bar*. We can't do the same
115123 * algorithm here, titlebars are expectedly much bigger. Just subtract a couple
116124 * pixels to get a proper feel. */
117- if (type != META_FRAME_TYPE_ATTACHED )
118- borders -> invisible .top = MAX (borders -> invisible .top , draggable_borders - 2 );
125+ if (type != META_FRAME_TYPE_ATTACHED && !(flags & META_FRAME_TILED_TOP_EDGES ))
126+ borders -> invisible .top = MAX (layout -> invisible_border .top , draggable_borders - 2 );
127+ else
128+ borders -> invisible .top = 0 ;
119129 }
120130
121131 borders -> total .left = borders -> invisible .left + borders -> visible .left ;
0 commit comments