@@ -1116,6 +1116,9 @@ show_tip_now (MetaFrames *frames)
1116
1116
case META_FRAME_CONTROL_MENU :
1117
1117
tiptext = _ ("Window Menu" );
1118
1118
break ;
1119
+ case META_FRAME_CONTROL_APPMENU :
1120
+ tiptext = _ ("Window App Menu" );
1121
+ break ;
1119
1122
case META_FRAME_CONTROL_MINIMIZE :
1120
1123
tiptext = _ ("Minimize Window" );
1121
1124
break ;
@@ -1466,6 +1469,9 @@ meta_frames_button_press_event (GtkWidget *widget,
1466
1469
case META_FRAME_CONTROL_MENU :
1467
1470
op = META_GRAB_OP_CLICKING_MENU ;
1468
1471
break ;
1472
+ case META_FRAME_CONTROL_APPMENU :
1473
+ op = META_GRAB_OP_CLICKING_APPMENU ;
1474
+ break ;
1469
1475
case META_FRAME_CONTROL_SHADE :
1470
1476
op = META_GRAB_OP_CLICKING_SHADE ;
1471
1477
break ;
@@ -1730,6 +1736,7 @@ meta_frames_button_release_event (GtkWidget *widget,
1730
1736
break ;
1731
1737
1732
1738
case META_GRAB_OP_CLICKING_MENU :
1739
+ case META_GRAB_OP_CLICKING_APPMENU :
1733
1740
meta_core_end_grab_op (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), event -> time );
1734
1741
break ;
1735
1742
@@ -1816,6 +1823,8 @@ meta_frames_update_prelit_control (MetaFrames *frames,
1816
1823
break ;
1817
1824
case META_FRAME_CONTROL_MENU :
1818
1825
break ;
1826
+ case META_FRAME_CONTROL_APPMENU :
1827
+ break ;
1819
1828
case META_FRAME_CONTROL_MINIMIZE :
1820
1829
break ;
1821
1830
case META_FRAME_CONTROL_MAXIMIZE :
@@ -1868,6 +1877,7 @@ meta_frames_update_prelit_control (MetaFrames *frames,
1868
1877
switch (control )
1869
1878
{
1870
1879
case META_FRAME_CONTROL_MENU :
1880
+ case META_FRAME_CONTROL_APPMENU :
1871
1881
case META_FRAME_CONTROL_MINIMIZE :
1872
1882
case META_FRAME_CONTROL_MAXIMIZE :
1873
1883
case META_FRAME_CONTROL_DELETE :
@@ -1921,6 +1931,7 @@ meta_frames_motion_notify_event (GtkWidget *widget,
1921
1931
switch (grab_op )
1922
1932
{
1923
1933
case META_GRAB_OP_CLICKING_MENU :
1934
+ case META_GRAB_OP_CLICKING_APPMENU :
1924
1935
case META_GRAB_OP_CLICKING_DELETE :
1925
1936
case META_GRAB_OP_CLICKING_MINIMIZE :
1926
1937
case META_GRAB_OP_CLICKING_MAXIMIZE :
@@ -1951,6 +1962,8 @@ meta_frames_motion_notify_event (GtkWidget *widget,
1951
1962
control = get_control (frames , frame , x , y );
1952
1963
if (! ((control == META_FRAME_CONTROL_MENU &&
1953
1964
grab_op == META_GRAB_OP_CLICKING_MENU ) ||
1965
+ (control == META_FRAME_CONTROL_APPMENU &&
1966
+ grab_op == META_GRAB_OP_CLICKING_APPMENU ) ||
1954
1967
(control == META_FRAME_CONTROL_DELETE &&
1955
1968
grab_op == META_GRAB_OP_CLICKING_DELETE ) ||
1956
1969
(control == META_FRAME_CONTROL_MINIMIZE &&
@@ -2352,6 +2365,12 @@ meta_frames_paint_to_drawable (MetaFrames *frames,
2352
2365
else
2353
2366
button_states [META_BUTTON_TYPE_MENU ] = META_BUTTON_STATE_PRELIGHT ;
2354
2367
break ;
2368
+ case META_FRAME_CONTROL_APPMENU :
2369
+ if (grab_op == META_GRAB_OP_CLICKING_MENU )
2370
+ button_states [META_BUTTON_TYPE_APPMENU ] = META_BUTTON_STATE_PRESSED ;
2371
+ else
2372
+ button_states [META_BUTTON_TYPE_APPMENU ] = META_BUTTON_STATE_PRELIGHT ;
2373
+ break ;
2355
2374
case META_FRAME_CONTROL_MINIMIZE :
2356
2375
if (grab_op == META_GRAB_OP_CLICKING_MINIMIZE )
2357
2376
button_states [META_BUTTON_TYPE_MINIMIZE ] = META_BUTTON_STATE_PRESSED ;
@@ -2549,6 +2568,9 @@ control_rect (MetaFrameControl control,
2549
2568
case META_FRAME_CONTROL_MENU :
2550
2569
rect = & fgeom -> menu_rect .visible ;
2551
2570
break ;
2571
+ case META_FRAME_CONTROL_APPMENU :
2572
+ rect = & fgeom -> appmenu_rect .visible ;
2573
+ break ;
2552
2574
case META_FRAME_CONTROL_MINIMIZE :
2553
2575
rect = & fgeom -> min_rect .visible ;
2554
2576
break ;
@@ -2635,6 +2657,9 @@ get_control (MetaFrames *frames,
2635
2657
if (POINT_IN_RECT (x , y , fgeom .menu_rect .clickable ))
2636
2658
return META_FRAME_CONTROL_MENU ;
2637
2659
2660
+ if (POINT_IN_RECT (x , y , fgeom .appmenu_rect .clickable ))
2661
+ return META_FRAME_CONTROL_APPMENU ;
2662
+
2638
2663
meta_core_get (GDK_DISPLAY_XDISPLAY (gdk_display_get_default ()), frame -> xwindow ,
2639
2664
META_CORE_GET_FRAME_FLAGS , & flags ,
2640
2665
META_CORE_GET_END );
0 commit comments