int OnShowContextMenu (int aContextFlags, long /*int*/ aEvent, long /*int*/ aNode) { nsIDOMEvent domEvent = new nsIDOMEvent (aEvent); long /*int*/[] result = new long /*int*/[1]; int rc = domEvent.QueryInterface (IsPre_17 ? (IsPre_4 ? nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_IID : nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_10_IID) :nsIDOMMouseEvent.NS_IDOMMOUSEEVENT_17_IID, result); if (rc != XPCOM.NS_OK) error (rc); if (result[0] == 0) error (XPCOM.NS_NOINTERFACE); int[] aScreenX = new int[1], aScreenY = new int[1]; nsIDOMMouseEvent domMouseEvent = new nsIDOMMouseEvent (result[0]); rc = domMouseEvent.GetScreenX (aScreenX); if (rc != XPCOM.NS_OK) error (rc); rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); domMouseEvent.Release (); Event event = new Event (); event.x = aScreenX[0]; event.y = aScreenY[0]; browser.notifyListeners (SWT.MenuDetect, event); if (!event.doit || browser.isDisposed ()) return XPCOM.NS_OK; Menu menu = browser.getMenu (); if (menu != null && !menu.isDisposed ()) { if (aScreenX[0] != event.x || aScreenY[0] != event.y) { menu.setLocation (event.x, event.y); } menu.setVisible (true); } return XPCOM.NS_OK; }
rc = domMouseEvent.GetScreenX (aScreenX); if (rc != XPCOM.NS_OK) error (rc); rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); domMouseEvent.Release ();
rc = domMouseEvent.GetScreenX (aScreenX); if (rc != XPCOM.NS_OK) error (rc); rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); domMouseEvent.Release ();
rc = domMouseEvent.GetScreenX (aScreenX); if (rc != XPCOM.NS_OK) error (rc); rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); domMouseEvent.Release ();
rc = domMouseEvent.GetScreenX (aScreenX); if (rc != XPCOM.NS_OK) error (rc); rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); domMouseEvent.Release ();
rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); Point position = new Point (aScreenX[0], aScreenY[0]);
rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); Point position = DPIUtil.autoScaleDown(new Point (aScreenX[0], aScreenY[0]));// To Points
rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); Point position = DPIUtil.autoScaleDown(new Point (aScreenX[0], aScreenY[0]));// To Points
rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); Point position = DPIUtil.autoScaleDown(new Point (aScreenX[0], aScreenY[0]));// To Points
rc = domMouseEvent.GetScreenY (aScreenY); if (rc != XPCOM.NS_OK) error (rc); Point position = DPIUtil.autoScaleDown(new Point (aScreenX[0], aScreenY[0]));// To Points