亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gdkinput-win32.c

?? linux下電話本所依賴的一些圖形庫
?? C
?? 第 1 頁 / 共 3 頁
字號:
/* GDK - The GIMP Drawing Kit * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald * Copyright (C) 1998-2002 Tor Lillqvist * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * 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. *//* * Modified by the GTK+ Team and others 1997-2000.  See the AUTHORS * file for a list of people on the GTK+ Team.  See the ChangeLog * files for a list of changes.  These files are distributed with * GTK+ at ftp://ftp.gtk.org/pub/gtk/.  */#include <config.h>#include <stdlib.h>#include <stdio.h>#include <math.h>#include "gdk.h"#include "gdkinput.h"#include "gdkinternals.h"#include "gdkprivate-win32.h"#include "gdkinput-win32.h"#ifdef HAVE_WINTAB#define PACKETDATA (PK_CONTEXT | PK_CURSOR | PK_BUTTONS | PK_X | PK_Y  | PK_NORMAL_PRESSURE | PK_ORIENTATION)#define PACKETMODE (PK_BUTTONS)#include <pktdef.h>#define DEBUG_WINTAB 1		/* Verbose debug messages enabled */#define PROXIMITY_OUT_DELAY 200 /* In milliseconds, see set_ignore_core */#endif#if defined(HAVE_WINTAB) || defined(HAVE_WHATEVER_OTHER)#define HAVE_SOME_XINPUT#endif#define TWOPI (2.*G_PI)/* Forward declarations */#ifdef HAVE_WINTABstatic GdkDevicePrivate *gdk_input_find_dev_from_ctx (HCTX hctx,						      UINT id);static GList     *wintab_contexts = NULL;static GdkWindow *wintab_window = NULL;#endif /* HAVE_WINTAB */#ifdef HAVE_SOME_XINPUTstatic GdkWindow *x_grab_window = NULL; /* Window that currently holds					 * the extended inputs grab					 */static GdkEventMask x_grab_mask;static gboolean x_grab_owner_events;#endif /* HAVE_SOME_XINPUT */#ifdef HAVE_WINTABstatic GdkDevicePrivate *gdk_input_find_dev_from_ctx (HCTX hctx,			     UINT cursor){  GList *tmp_list = _gdk_input_devices;  GdkDevicePrivate *gdkdev;  while (tmp_list)    {      gdkdev = (GdkDevicePrivate *) (tmp_list->data);      if (gdkdev->hctx == hctx && gdkdev->cursor == cursor)	return gdkdev;      tmp_list = tmp_list->next;    }  return NULL;}#if DEBUG_WINTABstatic voidprint_lc(LOGCONTEXT *lc){  g_print ("lcName = %s\n", lc->lcName);  g_print ("lcOptions =");  if (lc->lcOptions & CXO_SYSTEM) g_print (" CXO_SYSTEM");  if (lc->lcOptions & CXO_PEN) g_print (" CXO_PEN");  if (lc->lcOptions & CXO_MESSAGES) g_print (" CXO_MESSAGES");  if (lc->lcOptions & CXO_MARGIN) g_print (" CXO_MARGIN");  if (lc->lcOptions & CXO_MGNINSIDE) g_print (" CXO_MGNINSIDE");  if (lc->lcOptions & CXO_CSRMESSAGES) g_print (" CXO_CSRMESSAGES");  g_print ("\n");  g_print ("lcStatus =");  if (lc->lcStatus & CXS_DISABLED) g_print (" CXS_DISABLED");  if (lc->lcStatus & CXS_OBSCURED) g_print (" CXS_OBSCURED");  if (lc->lcStatus & CXS_ONTOP) g_print (" CXS_ONTOP");  g_print ("\n");  g_print ("lcLocks =");  if (lc->lcLocks & CXL_INSIZE) g_print (" CXL_INSIZE");  if (lc->lcLocks & CXL_INASPECT) g_print (" CXL_INASPECT");  if (lc->lcLocks & CXL_SENSITIVITY) g_print (" CXL_SENSITIVITY");  if (lc->lcLocks & CXL_MARGIN) g_print (" CXL_MARGIN");  g_print ("\n");  g_print ("lcMsgBase = %#x, lcDevice = %#x, lcPktRate = %d\n",	  lc->lcMsgBase, lc->lcDevice, lc->lcPktRate);  g_print ("lcPktData =");  if (lc->lcPktData & PK_CONTEXT) g_print (" PK_CONTEXT");  if (lc->lcPktData & PK_STATUS) g_print (" PK_STATUS");  if (lc->lcPktData & PK_TIME) g_print (" PK_TIME");  if (lc->lcPktData & PK_CHANGED) g_print (" PK_CHANGED");  if (lc->lcPktData & PK_SERIAL_NUMBER) g_print (" PK_SERIAL_NUMBER");  if (lc->lcPktData & PK_CURSOR) g_print (" PK_CURSOR");  if (lc->lcPktData & PK_BUTTONS) g_print (" PK_BUTTONS");  if (lc->lcPktData & PK_X) g_print (" PK_X");  if (lc->lcPktData & PK_Y) g_print (" PK_Y");  if (lc->lcPktData & PK_Z) g_print (" PK_Z");  if (lc->lcPktData & PK_NORMAL_PRESSURE) g_print (" PK_NORMAL_PRESSURE");  if (lc->lcPktData & PK_TANGENT_PRESSURE) g_print (" PK_TANGENT_PRESSURE");  if (lc->lcPktData & PK_ORIENTATION) g_print (" PK_ORIENTATION");  if (lc->lcPktData & PK_ROTATION) g_print (" PK_ROTATION");  g_print ("\n");  g_print ("lcPktMode =");  if (lc->lcPktMode & PK_CONTEXT) g_print (" PK_CONTEXT");  if (lc->lcPktMode & PK_STATUS) g_print (" PK_STATUS");  if (lc->lcPktMode & PK_TIME) g_print (" PK_TIME");  if (lc->lcPktMode & PK_CHANGED) g_print (" PK_CHANGED");  if (lc->lcPktMode & PK_SERIAL_NUMBER) g_print (" PK_SERIAL_NUMBER");  if (lc->lcPktMode & PK_CURSOR) g_print (" PK_CURSOR");  if (lc->lcPktMode & PK_BUTTONS) g_print (" PK_BUTTONS");  if (lc->lcPktMode & PK_X) g_print (" PK_X");  if (lc->lcPktMode & PK_Y) g_print (" PK_Y");  if (lc->lcPktMode & PK_Z) g_print (" PK_Z");  if (lc->lcPktMode & PK_NORMAL_PRESSURE) g_print (" PK_NORMAL_PRESSURE");  if (lc->lcPktMode & PK_TANGENT_PRESSURE) g_print (" PK_TANGENT_PRESSURE");  if (lc->lcPktMode & PK_ORIENTATION) g_print (" PK_ORIENTATION");  if (lc->lcPktMode & PK_ROTATION) g_print (" PK_ROTATION");  g_print ("\n");  g_print ("lcMoveMask =");  if (lc->lcMoveMask & PK_CONTEXT) g_print (" PK_CONTEXT");  if (lc->lcMoveMask & PK_STATUS) g_print (" PK_STATUS");  if (lc->lcMoveMask & PK_TIME) g_print (" PK_TIME");  if (lc->lcMoveMask & PK_CHANGED) g_print (" PK_CHANGED");  if (lc->lcMoveMask & PK_SERIAL_NUMBER) g_print (" PK_SERIAL_NUMBER");  if (lc->lcMoveMask & PK_CURSOR) g_print (" PK_CURSOR");  if (lc->lcMoveMask & PK_BUTTONS) g_print (" PK_BUTTONS");  if (lc->lcMoveMask & PK_X) g_print (" PK_X");  if (lc->lcMoveMask & PK_Y) g_print (" PK_Y");  if (lc->lcMoveMask & PK_Z) g_print (" PK_Z");  if (lc->lcMoveMask & PK_NORMAL_PRESSURE) g_print (" PK_NORMAL_PRESSURE");  if (lc->lcMoveMask & PK_TANGENT_PRESSURE) g_print (" PK_TANGENT_PRESSURE");  if (lc->lcMoveMask & PK_ORIENTATION) g_print (" PK_ORIENTATION");  if (lc->lcMoveMask & PK_ROTATION) g_print (" PK_ROTATION");  g_print ("\n");  g_print ("lcBtnDnMask = %#x, lcBtnUpMask = %#x\n",	  (guint) lc->lcBtnDnMask, (guint) lc->lcBtnUpMask);  g_print ("lcInOrgX = %ld, lcInOrgY = %ld, lcInOrgZ = %ld\n",	  lc->lcInOrgX, lc->lcInOrgY, lc->lcInOrgZ);  g_print ("lcInExtX = %ld, lcInExtY = %ld, lcInExtZ = %ld\n",	  lc->lcInExtX, lc->lcInExtY, lc->lcInExtZ);  g_print ("lcOutOrgX = %ld, lcOutOrgY = %ld, lcOutOrgZ = %ld\n",	  lc->lcOutOrgX, lc->lcOutOrgY, lc->lcOutOrgZ);  g_print ("lcOutExtX = %ld, lcOutExtY = %ld, lcOutExtZ = %ld\n",	  lc->lcOutExtX, lc->lcOutExtY, lc->lcOutExtZ);  g_print ("lcSensX = %g, lcSensY = %g, lcSensZ = %g\n",	  lc->lcSensX / 65536., lc->lcSensY / 65536., lc->lcSensZ / 65536.);  g_print ("lcSysMode = %d\n", lc->lcSysMode);  g_print ("lcSysOrgX = %d, lcSysOrgY = %d\n",	  lc->lcSysOrgX, lc->lcSysOrgY);  g_print ("lcSysExtX = %d, lcSysExtY = %d\n",	  lc->lcSysExtX, lc->lcSysExtY);  g_print ("lcSysSensX = %g, lcSysSensY = %g\n",	  lc->lcSysSensX / 65536., lc->lcSysSensY / 65536.);}#endifvoid_gdk_input_wintab_init_check (void){  static gboolean wintab_initialized = FALSE;  GdkDevicePrivate *gdkdev;  GdkWindowAttr wa;  WORD specversion;  HCTX *hctx;  UINT ndevices, ncursors, ncsrtypes, firstcsr, hardware;  BOOL active;  AXIS axis_x, axis_y, axis_npressure, axis_or[3];  int i, k;  int devix, cursorix;  char devname[100], csrname[100];  BOOL defcontext_done;  if (wintab_initialized)    return;    wintab_initialized = TRUE;    wintab_contexts = NULL;  if (!_gdk_input_ignore_wintab &&      WTInfo (0, 0, NULL))    {      WTInfo (WTI_INTERFACE, IFC_SPECVERSION, &specversion);      GDK_NOTE (INPUT, g_print ("Wintab interface version %d.%d\n",			       HIBYTE (specversion), LOBYTE (specversion)));      WTInfo (WTI_INTERFACE, IFC_NDEVICES, &ndevices);      WTInfo (WTI_INTERFACE, IFC_NCURSORS, &ncursors);#if DEBUG_WINTAB      GDK_NOTE (INPUT, g_print ("NDEVICES: %d, NCURSORS: %d\n",			       ndevices, ncursors));#endif      /* Create a dummy window to receive wintab events */      wa.wclass = GDK_INPUT_OUTPUT;      wa.event_mask = GDK_ALL_EVENTS_MASK;      wa.width = 2;      wa.height = 2;      wa.x = -100;      wa.y = -100;      wa.window_type = GDK_WINDOW_TOPLEVEL;      if ((wintab_window = gdk_window_new (NULL, &wa, GDK_WA_X|GDK_WA_Y)) == NULL)	{	  g_warning ("gdk_input_wintab_init: gdk_window_new failed");	  return;	}      g_object_ref (wintab_window);            for (devix = 0; devix < ndevices; devix++)	{	  LOGCONTEXT lc;	  	  /* We open the Wintab device (hmm, what if there are several?) as a	   * system pointing device, i.e. it controls the normal Windows	   * cursor. This seems much more natural.	   */	  WTInfo (WTI_DEVICES + devix, DVC_NAME, devname);      	  WTInfo (WTI_DEVICES + devix, DVC_NCSRTYPES, &ncsrtypes);	  WTInfo (WTI_DEVICES + devix, DVC_FIRSTCSR, &firstcsr);	  WTInfo (WTI_DEVICES + devix, DVC_HARDWARE, &hardware);	  WTInfo (WTI_DEVICES + devix, DVC_X, &axis_x);	  WTInfo (WTI_DEVICES + devix, DVC_Y, &axis_y);	  WTInfo (WTI_DEVICES + devix, DVC_NPRESSURE, &axis_npressure);	  WTInfo (WTI_DEVICES + devix, DVC_ORIENTATION, axis_or);	  defcontext_done = FALSE;	  if (HIBYTE (specversion) > 1 || LOBYTE (specversion) >= 1)	    {	      /* Try to get device-specific default context */	      /* Some drivers, e.g. Aiptek, don't provide this info */	      if (WTInfo (WTI_DSCTXS + devix, 0, &lc) > 0)		defcontext_done = TRUE;#if DEBUG_WINTAB	      if (defcontext_done)		GDK_NOTE (INPUT, (g_print("Using device-specific default context\n")));	      else		GDK_NOTE (INPUT, (g_print("Note: Driver did not provide device specific default context info despite claiming to support version 1.1\n")));#endif	    }	  if (!defcontext_done)	    WTInfo (WTI_DEFSYSCTX, 0, &lc);#if DEBUG_WINTAB	  GDK_NOTE (INPUT, (g_print("Default context:\n"), print_lc(&lc)));#endif	  lc.lcOptions |= CXO_MESSAGES;	  lc.lcStatus = 0;	  lc.lcMsgBase = WT_DEFBASE;	  lc.lcPktRate = 50;	  lc.lcPktData = PACKETDATA;	  lc.lcPktMode = PACKETMODE;	  lc.lcMoveMask = PACKETDATA;	  lc.lcBtnUpMask = lc.lcBtnDnMask = ~0;	  lc.lcOutOrgX = axis_x.axMin;	  lc.lcOutOrgY = axis_y.axMin;	  lc.lcOutExtX = axis_x.axMax - axis_x.axMin;	  lc.lcOutExtY = axis_y.axMax - axis_y.axMin;	  lc.lcOutExtY = -lc.lcOutExtY; /* We want Y growing downward */#if DEBUG_WINTAB	  GDK_NOTE (INPUT, (g_print("context for device %d:\n", devix),			   print_lc(&lc)));#endif	  hctx = g_new (HCTX, 1);          if ((*hctx = WTOpen (GDK_WINDOW_HWND (wintab_window), &lc, TRUE)) == NULL)	    {	      g_warning ("gdk_input_wintab_init: WTOpen failed");	      return;	    }	  GDK_NOTE (INPUT, g_print ("opened Wintab device %d %p\n",				   devix, *hctx));	  wintab_contexts = g_list_append (wintab_contexts, hctx);#if 0	  WTEnable (*hctx, TRUE);#endif	  WTOverlap (*hctx, TRUE);#if DEBUG_WINTAB	  GDK_NOTE (INPUT, (g_print("context for device %d after WTOpen:\n", devix),			   print_lc(&lc)));#endif	  /* Increase packet queue size to reduce the risk of lost packets */	  /* According to the specs, if the function fails we must try again */	  /* with a smaller queue size */	  GDK_NOTE (INPUT, g_print("Attempting to increase queue size\n"));	  for (i = 128; i >= 1; i >>= 1)	    {	      if (WTQueueSizeSet(*hctx, i))		{		  GDK_NOTE (INPUT, g_print("Queue size set to %d\n", i));		  break;		}	    }	  if (!i)	    GDK_NOTE (INPUT, g_print("Whoops, no queue size could be set\n"));	  for (cursorix = firstcsr; cursorix < firstcsr + ncsrtypes; cursorix++)	    {	      active = FALSE;	      WTInfo (WTI_CURSORS + cursorix, CSR_ACTIVE, &active);	      if (!active)		continue;	      gdkdev = g_object_new (GDK_TYPE_DEVICE, NULL);	      WTInfo (WTI_CURSORS + cursorix, CSR_NAME, csrname);	      gdkdev->info.name = g_strconcat (devname, " ", csrname, NULL);	      gdkdev->info.source = GDK_SOURCE_PEN;	      gdkdev->info.mode = GDK_MODE_SCREEN;	      gdkdev->info.has_cursor = TRUE;	      gdkdev->hctx = *hctx;	      gdkdev->cursor = cursorix;	      WTInfo (WTI_CURSORS + cursorix, CSR_PKTDATA, &gdkdev->pktdata);	      gdkdev->info.num_axes = 0;	      if (gdkdev->pktdata & PK_X)		gdkdev->info.num_axes++;	      if (gdkdev->pktdata & PK_Y)		gdkdev->info.num_axes++;	      if (gdkdev->pktdata & PK_NORMAL_PRESSURE)		gdkdev->info.num_axes++;	      /* The wintab driver for the Wacom ArtPad II reports	       * PK_ORIENTATION in CSR_PKTDATA, but the tablet doesn't	       * actually sense tilt. Catch this by noticing that the	       * orientation axis's azimuth resolution is zero.	       */	      if ((gdkdev->pktdata & PK_ORIENTATION)		  && axis_or[0].axResolution == 0)		gdkdev->pktdata &= ~PK_ORIENTATION;	      if (gdkdev->pktdata & PK_ORIENTATION)		gdkdev->info.num_axes += 2; /* x and y tilt */	      WTInfo (WTI_CURSORS + cursorix, CSR_NPBTNMARKS, &gdkdev->npbtnmarks);	      gdkdev->info.axes = g_new (GdkDeviceAxis, gdkdev->info.num_axes);	      gdkdev->axes = g_new (GdkAxisInfo, gdkdev->info.num_axes);	      gdkdev->last_axis_data = g_new (gint, gdkdev->info.num_axes);	      	      k = 0;	      if (gdkdev->pktdata & PK_X)		{		  gdkdev->axes[k].xresolution =		    gdkdev->axes[k].resolution = axis_x.axResolution / 65535.;		  gdkdev->axes[k].xmin_value =		    gdkdev->axes[k].min_value = axis_x.axMin;		  gdkdev->axes[k].xmax_value =		    gdkdev->axes[k].max_value = axis_x.axMax;		  gdkdev->info.axes[k].use = GDK_AXIS_X;		  gdkdev->info.axes[k].min = axis_x.axMin;		  gdkdev->info.axes[k].max = axis_x.axMax;		  k++;		}	      if (gdkdev->pktdata & PK_Y)		{		  gdkdev->axes[k].xresolution =		    gdkdev->axes[k].resolution = axis_y.axResolution / 65535.;		  gdkdev->axes[k].xmin_value =		    gdkdev->axes[k].min_value = axis_y.axMin;		  gdkdev->axes[k].xmax_value =		    gdkdev->axes[k].max_value = axis_y.axMax;		  gdkdev->info.axes[k].use = GDK_AXIS_Y;		  gdkdev->info.axes[k].min = axis_y.axMin;		  gdkdev->info.axes[k].max = axis_y.axMax;		  k++;		}	      if (gdkdev->pktdata & PK_NORMAL_PRESSURE)		{		  gdkdev->axes[k].xresolution =		    gdkdev->axes[k].resolution = axis_npressure.axResolution / 65535.;		  gdkdev->axes[k].xmin_value =		    gdkdev->axes[k].min_value = axis_npressure.axMin;		  gdkdev->axes[k].xmax_value =		    gdkdev->axes[k].max_value = axis_npressure.axMax;		  gdkdev->info.axes[k].use = GDK_AXIS_PRESSURE;		  /* GIMP seems to expect values in the range 0-1 */		  gdkdev->info.axes[k].min = 0.0; /*axis_npressure.axMin;*/		  gdkdev->info.axes[k].max = 1.0; /*axis_npressure.axMax;*/		  k++;		}	      if (gdkdev->pktdata & PK_ORIENTATION)		{		  GdkAxisUse axis;		  gdkdev->orientation_axes[0] = axis_or[0];		  gdkdev->orientation_axes[1] = axis_or[1];		  for (axis = GDK_AXIS_XTILT; axis <= GDK_AXIS_YTILT; axis++)		    {		      /* Wintab gives us aximuth and altitude, which

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
天堂资源在线中文精品| 色久优优欧美色久优优| 风流少妇一区二区| 色8久久精品久久久久久蜜| 4438成人网| 国产精品久久久久一区二区三区| 亚洲免费观看高清完整版在线| 亚洲bdsm女犯bdsm网站| 国产一区二区三区视频在线播放| 色偷偷久久人人79超碰人人澡| 欧美一区二区成人| 亚洲欧洲国产专区| 蜜桃久久av一区| 色综合色狠狠天天综合色| 精品福利一二区| 亚洲永久免费视频| 懂色一区二区三区免费观看| 91精品国产91综合久久蜜臀| 亚洲男人天堂av| 国产综合色视频| 欧美日韩三级一区二区| 欧美激情资源网| 热久久免费视频| 99久久亚洲一区二区三区青草 | 日韩精品91亚洲二区在线观看| 成人综合在线观看| 精品国产免费一区二区三区四区 | 91麻豆国产精品久久| 精品国产乱子伦一区| 亚洲超碰97人人做人人爱| 波多野结衣在线aⅴ中文字幕不卡| 日韩一区二区影院| 亚洲午夜在线观看视频在线| 99热国产精品| 国产精品热久久久久夜色精品三区| 久草热8精品视频在线观看| 欧美色图第一页| 亚洲久本草在线中文字幕| 成人18视频日本| 欧美高清在线精品一区| 国产老妇另类xxxxx| 精品国产乱码久久久久久图片| 日韩激情在线观看| 欧美日韩国产一二三| 亚洲一区二区美女| 91久久精品网| 亚洲第一激情av| 精品视频1区2区3区| 一区二区在线观看免费视频播放| 99这里都是精品| 亚洲免费av观看| 一本到不卡免费一区二区| 一区二区三区丝袜| 欧美日韩国产精品成人| 亚洲福利视频一区二区| 欧美二区乱c少妇| 美日韩一区二区三区| 精品国产第一区二区三区观看体验| 五月天国产精品| 日韩欧美国产午夜精品| 国产精一区二区三区| 国产精品高潮呻吟| 色欧美88888久久久久久影院| 亚洲一卡二卡三卡四卡无卡久久 | 国产成人av福利| 中文成人综合网| 91色在线porny| 日韩成人精品在线观看| 国产亚洲1区2区3区| 国产91精品免费| 一区二区三区鲁丝不卡| 日韩一区二区三区四区五区六区| 国内一区二区在线| 国产精品妹子av| 欧美丰满高潮xxxx喷水动漫| 国产一区二区视频在线| 亚洲蜜桃精久久久久久久| 欧美久久高跟鞋激| 国产美女视频一区| 亚洲人快播电影网| 欧美一级二级三级蜜桃| 成人高清免费在线播放| 亚洲午夜电影网| 久久亚洲精品小早川怜子| 91尤物视频在线观看| 免费看欧美美女黄的网站| 国产精品嫩草久久久久| 欧美高清视频在线高清观看mv色露露十八 | 免费人成在线不卡| 亚洲人成电影网站色mp4| 91精品婷婷国产综合久久竹菊| 国产精品一二三四区| 亚洲国产成人porn| 亚洲国产精品v| 欧美一区二区黄| 在线观看国产精品网站| 国产精品影视天天线| 日韩二区三区在线观看| 亚洲色图20p| 国产性做久久久久久| 91精品国产高清一区二区三区 | 亚洲免费观看高清| 国产亚洲精品bt天堂精选| 欧美日韩高清影院| 91女人视频在线观看| 国产精品99久久久久久有的能看| 亚洲mv在线观看| 亚洲一区二区三区四区在线免费观看 | 欧美激情一区在线| 精品久久久久99| 3d成人动漫网站| 欧美日韩一二三区| 色婷婷国产精品| 北岛玲一区二区三区四区| 国产一区二区美女诱惑| 欧美a一区二区| 视频一区国产视频| 婷婷中文字幕一区三区| 亚洲综合色区另类av| 综合网在线视频| 亚洲国产精品成人综合色在线婷婷 | 亚洲国产毛片aaaaa无费看| 中文字幕av不卡| 久久精品视频一区二区三区| 精品电影一区二区| 欧美精品一区二区在线播放| 欧美一区二区视频在线观看 | 欧美一区日本一区韩国一区| 欧美体内she精高潮| 一本久道久久综合中文字幕| 91麻豆国产香蕉久久精品| 不卡的看片网站| 色综合久久精品| 色妹子一区二区| 色视频成人在线观看免| 欧美日韩一区三区| 欧美日本精品一区二区三区| 欧美日本韩国一区二区三区视频 | 国产精品久久久久婷婷二区次| 26uuu欧美日本| 国产欧美日韩一区二区三区在线观看| 国产日韩欧美一区二区三区乱码| 26uuu成人网一区二区三区| 亚洲精品一区二区三区精华液| 久久日韩粉嫩一区二区三区| 国产亚洲一本大道中文在线| 国产欧美一区二区精品久导航| 欧美激情一区二区三区全黄| 亚洲丝袜美腿综合| 亚洲中国最大av网站| 亚洲不卡av一区二区三区| 免费成人性网站| 成人av在线电影| 欧美性生交片4| 日韩免费视频一区| 国产精品情趣视频| 五月天中文字幕一区二区| 精品中文字幕一区二区| 国产精品99久久久久久有的能看| 91黄色免费网站| 欧美一级高清片在线观看| 中文幕一区二区三区久久蜜桃| 一区二区在线观看免费 | 亚洲精品国产无天堂网2021| 日韩电影网1区2区| 国产69精品久久777的优势| 在线免费观看一区| 精品久久久久久久久久久院品网 | 欧美日韩精品电影| 337p日本欧洲亚洲大胆精品| 中文字幕制服丝袜成人av | 91亚洲国产成人精品一区二三| 欧美精品视频www在线观看| 久久久噜噜噜久久人人看 | 欧美日韩一二区| 中文字幕精品一区二区精品绿巨人| 亚洲一级二级三级在线免费观看| 国内成+人亚洲+欧美+综合在线| 91亚洲国产成人精品一区二区三 | 国产夫妻精品视频| 欧美人体做爰大胆视频| 国产日韩欧美麻豆| 免费在线观看视频一区| 色婷婷国产精品综合在线观看| 欧美电影精品一区二区| 一卡二卡欧美日韩| 成人免费的视频| 精品女同一区二区| 亚洲成人免费观看| 91亚洲精品乱码久久久久久蜜桃| 久久久久久久久97黄色工厂| 午夜视黄欧洲亚洲| 99久久精品国产毛片| 精品国产91亚洲一区二区三区婷婷| 一二三区精品视频| 99国产一区二区三精品乱码| 国产欧美精品在线观看| 国产在线观看一区二区| 欧美一区二区女人| 天堂av在线一区|