~muktupavels/metacity/adwaita-icon-theme-lp-1414613

« back to all changes in this revision

Viewing changes to src/core/core.c

  • Committer: Package Import Robot
  • Author(s): Dmitry Shachnev
  • Date: 2014-08-01 08:55:34 UTC
  • mfrom: (2.3.6 sid)
  • Revision ID: package-import@ubuntu.com-20140801085534-44mq40oafc8e6pq9
Tags: 1:3.12.0-1ubuntu1
* Merge with Debian unstable (LP: #1347992), remaining changes:
  - 05_raise_on_click_for_click_mode.patch:
    + Force raise on click option.
  - 20_do-not-place-windows-over-the-launcher.patch:
    + Do not initially position windows over the launcher.
  - 103_struts_in_the_middle.patch:
    + Add support for struts in the middle of the work area.
  - 104_workarea_union.patch:
    + Make the workarea be the union of available work areas,
      not only one.
  - 22_fix_above_tab_switching.patch:
    + For Above_Tab, don't compare keysym (fixes group switching).
  - Use Ubuntu Desktop team Vcs fields.
* Drop all other patches. Half of them have been applied upstream,
  others were only needed for Unity 2D and are no longer needed.
* debian/metacity-common.links:
  - Show keybindings in Unity control center (LP: #1299784).

Show diffs side-by-side

added added

removed removed

Lines of Context:
18
18
 * General Public License for more details.
19
19
 * 
20
20
 * You should have received a copy of the GNU General Public License
21
 
 * along with this program; if not, write to the Free Software
22
 
 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
23
 
 * 02111-1307, USA.
 
21
 * along with this program; if not, see <http://www.gnu.org/licenses/>.
24
22
 */
25
23
 
26
24
#include <config.h>
28
26
#include "frame-private.h"
29
27
#include "workspace.h"
30
28
#include "prefs.h"
 
29
#include "errors.h"
31
30
 
32
31
/* Looks up the MetaWindow representing the frame of the given X window.
33
32
 * Used as a helper function by a bunch of the functions below.
297
296
}
298
297
 
299
298
void
 
299
meta_core_lower_beneath_focus_window (Display *xdisplay,
 
300
                                      Window xwindow,
 
301
                                      guint32 timestamp)
 
302
{
 
303
  XWindowChanges changes;
 
304
  MetaDisplay *display;
 
305
  MetaScreen *screen;
 
306
  MetaWindow *focus_window;
 
307
 
 
308
  display = meta_display_for_x_display (xdisplay);
 
309
  screen = meta_display_screen_for_xwindow (display, xwindow);
 
310
  focus_window = meta_stack_get_top (screen->stack);
 
311
 
 
312
  if (focus_window == NULL)
 
313
    return;
 
314
 
 
315
  changes.stack_mode = Below;
 
316
  changes.sibling = focus_window->frame ? focus_window->frame->xwindow
 
317
                                        : focus_window->xwindow;
 
318
 
 
319
  meta_error_trap_push (display);
 
320
  XConfigureWindow (xdisplay,
 
321
                    xwindow,
 
322
                    CWSibling | CWStackMode,
 
323
                    &changes);
 
324
  meta_error_trap_pop (display, FALSE);
 
325
}
 
326
 
 
327
void
300
328
meta_core_user_focus (Display *xdisplay,
301
329
                      Window   frame_xwindow,
302
330
                      guint32  timestamp)