@@ -32,10 +32,10 @@ static const LayoutCoords XBOX_LAYOUT = {
3232 275 .f , 85 .f , // face buttons
3333 125 .f , 85 .f , // left stick upper-left
3434 252 .f , 158 .f , // right stick
35- 72 .f , 32 .f , 162 .f , 50 .f , // left bumper
36- 238 .f , 32 .f , 328 .f , 50 .f , // right bumper
37- 58 .f , 10 .f , 88 .f , 36 .f , // left trigger
38- 312 .f , 10 .f , 342 .f , 36 .f , // right trigger
35+ 83 .f , 33 .f , 151 .f , 47 .f , // left bumper (smaller)
36+ 249 .f , 33 .f , 317 .f , 47 .f , // right bumper
37+ 34 .f , 108 .f , 46 .f , 248 .f , // left trigger: slim, tall, on left grip
38+ 354 .f , 108 .f , 366 .f , 248 .f , // right trigger: mirror on right grip
3939 182 .f , 88 .f , 200 .f , 100 .f , 218 .f , 88 .f ,
4040 " A" , " B" , " X" , " Y" ,
4141 " Back" , " Guide" , " Start"
@@ -52,10 +52,10 @@ static const LayoutCoords SONY_LAYOUT = {
5252 285 .f , 96 .f , // face buttons
5353 160 .f , 130 .f , // left stick lower-left (Sony symmetrical)
5454 240 .f , 130 .f , // right stick
55- 72 .f , 32 .f , 162 .f , 50 .f ,
56- 238 .f , 32 .f , 328 .f , 50 .f ,
57- 58 .f , 10 .f , 88 .f , 36 .f ,
58- 312 .f , 10 .f , 342 .f , 36 .f ,
55+ 83 .f , 33 .f , 151 .f , 47 .f ,
56+ 249 .f , 33 .f , 317 .f , 47 .f ,
57+ 34 .f , 108 .f , 46 .f , 248 .f ,
58+ 354 .f , 108 .f , 366 .f , 248 .f ,
5959 182 .f , 88 .f , 200 .f , 100 .f , 218 .f , 88 .f ,
6060 SONY_FACE_A , SONY_FACE_B , SONY_FACE_X , SONY_FACE_Y ,
6161 " Share" , " PS" , " Options"
@@ -235,12 +235,14 @@ static void DrawBumper(ImDrawList* dl, const Layout& L,
235235
236236static void DrawTrigger (ImDrawList* dl, const Layout& L,
237237 ImVec2 tl, ImVec2 br, float value) {
238- float rnd = L.S (4 );
238+ float w = br.x - tl.x ;
239+ float h = br.y - tl.y ;
240+ float rnd = std::min (L.S (4 .f ), 0 .5f * std::min (w, h));
239241 dl->AddRectFilled (tl, br, IM_COL32 (35 , 35 , 38 , 255 ), rnd);
240242 dl->AddRect (tl, br, Outline (), rnd, 0 , L.S (1 .5f ));
241243
242244 if (value > 0 .01f ) {
243- float fillH = (br. y - tl. y ) * value;
245+ float fillH = h * value;
244246 ImVec2 ftl (tl.x , br.y - fillH);
245247 dl->AddRectFilled (ftl, br, IM_COL32 (100 , 200 , 255 , 220 ), rnd);
246248 }
0 commit comments