title: view.getLocationOnScreen(locations) returns wrong Y coordinate
body: <pre><code>int[] locations = new int[2];
  view.getLocationOnScreen(locations);
  int x = locations[0];
  int y = locations[1];
  otherView.setLocation(x, y);
  </code></pre>
  
  <p>This results in otherView being verticaly ~somewhere in the middle of first view and not exactly a top of it.</p>
  
  <p>This is basically the logic of setLocation method:</p>
  
  <pre><code>final Dialog dialog = new Dialog(getActivity());
  dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);
  dialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
              WindowManager.LayoutParams.FLAG_FULLSCREEN);
  dialog.setContentView(R.layout.custom_dialog);
  dialog.getWindow().setBackgroundDrawable(
              new ColorDrawable(Color.TRANSPARENT));
  
  WindowManager.LayoutParams layoutParams = dialog.getWindow().getAttributes();
  layoutParams.gravity = Gravity.TOP | Gravity.LEFT;
  layoutParams.x = mX;
  layoutParams.y = mY;
  dialog.getWindow().setAttributes(layoutParams);
  
  return dialog;
  </code></pre>