* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see <http://www.gnu.org/licenses/>.
*/
#include "config.h"
+#include <gdk/gdkdeviceprivate.h>
#include <gdk/gdkdisplayprivate.h>
#import "GdkQuartzView.h"
-#include "gdkwindow-quartz.h"
-#include "gdkcursor-quartz.h"
+#include "gdkquartzwindow.h"
+#include "gdkquartzcursor.h"
#include "gdkprivate-quartz.h"
-#include "gdkdevice-core-quartz.h"
+#include "gdkquartzdevice-core.h"
+
+struct _GdkQuartzDeviceCore
+{
+ GdkDevice parent_instance;
+};
+
+struct _GdkQuartzDeviceCoreClass
+{
+ GdkDeviceClass parent_class;
+};
static gboolean gdk_quartz_device_core_get_history (GdkDevice *device,
GdkWindow *window,
GdkWindow *window,
GdkCursor *cursor)
{
- GdkQuartzCursor *cursor_private;
NSCursor *nscursor;
- cursor_private = (GdkQuartzCursor *) cursor;
-
if (GDK_WINDOW_DESTROYED (window))
return;
- if (!cursor)
- nscursor = [NSCursor arrowCursor];
- else
- nscursor = cursor_private->nscursor;
+ nscursor = _gdk_quartz_cursor_get_ns_cursor (cursor);
[nscursor set];
}
toplevel = gdk_window_get_effective_toplevel (window);
- *mask = _gdk_quartz_events_get_current_event_mask ();
+ if (mask)
+ *mask = _gdk_quartz_events_get_current_keyboard_modifiers () |
+ _gdk_quartz_events_get_current_mouse_modifiers ();
/* Get the y coordinate, needs to be flipped. */
if (window == _gdk_root)
gint *win_y,
GdkModifierType *mask)
{
- GdkDisplay *display;
GdkWindow *found_window;
NSPoint point;
gint x_tmp, y_tmp;
found_window = gdk_quartz_device_core_query_state_helper (window, device,
win_x, win_y,
mask);
- if (!found_window)
- return FALSE;
-
- display = gdk_window_get_display (window);
if (root_window)
*root_window = _gdk_root;
*win_y = found_window ? y_tmp : -1;
if (mask)
- *mask = _gdk_quartz_events_get_current_event_mask ();
+ *mask = _gdk_quartz_events_get_current_keyboard_modifiers () |
+ _gdk_quartz_events_get_current_mouse_modifiers ();
return found_window;
}