Rebase against d3cb5c24a5ebbc7dcfb181a56f0f55cf3d1a1c30.

This commit is contained in:
Sebastian Lackner 2016-08-29 18:29:37 +02:00
parent 398d920e3a
commit 39c7e02819
3 changed files with 45 additions and 48 deletions

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "30cdd1fb8cea410cb9e363b16278528669e2c19a"
echo "d3cb5c24a5ebbc7dcfb181a56f0f55cf3d1a1c30"
}
# Show version information

View File

@ -1,4 +1,4 @@
From b46fe984533047235c49722a6e0d48960a487cdb Mon Sep 17 00:00:00 2001
From 20f08d1d7a69425048bd824722097e5c04e1d1de Mon Sep 17 00:00:00 2001
From: Sebastian Lackner <sebastian@fds-team.de>
Date: Fri, 4 Dec 2015 10:36:47 +0100
Subject: server: Introduce a new alloc_handle object callback. (v2)
@ -86,16 +86,16 @@ index 7c0ca99..753bf66 100644
dir_destroy /* destroy */
};
diff --git a/server/clipboard.c b/server/clipboard.c
index 7b92706..fa3aa51 100644
index 8396ec3..73028e4 100644
--- a/server/clipboard.c
+++ b/server/clipboard.c
@@ -68,6 +68,7 @@ static const struct object_ops clipboard_ops =
@@ -72,6 +72,7 @@ static const struct object_ops clipboard_ops =
no_link_name, /* link_name */
NULL, /* unlink_name */
no_open_file, /* open_file */
+ no_alloc_handle, /* alloc_handle */
no_close_handle, /* close_handle */
no_destroy /* destroy */
clipboard_destroy /* destroy */
};
diff --git a/server/completion.c b/server/completion.c
index 8b8983a..72dbc5b 100644
@ -110,7 +110,7 @@ index 8b8983a..72dbc5b 100644
completion_destroy /* destroy */
};
diff --git a/server/console.c b/server/console.c
index 4d275f0..5575c9d 100644
index 32d3137..4fcb1e6 100644
--- a/server/console.c
+++ b/server/console.c
@@ -87,6 +87,7 @@ static const struct object_ops console_input_ops =
@ -129,7 +129,7 @@ index 4d275f0..5575c9d 100644
no_close_handle, /* close_handle */
console_input_events_destroy /* destroy */
};
@@ -175,6 +177,7 @@ static const struct object_ops screen_buffer_ops =
@@ -177,6 +179,7 @@ static const struct object_ops screen_buffer_ops =
no_link_name, /* link_name */
NULL, /* unlink_name */
no_open_file, /* open_file */
@ -158,7 +158,7 @@ index 2eb794a..a2c07ba 100644
debug_ctx_destroy /* destroy */
};
diff --git a/server/device.c b/server/device.c
index 22ade88..b949548 100644
index e4f55c7..071b71f 100644
--- a/server/device.c
+++ b/server/device.c
@@ -81,6 +81,7 @@ static const struct object_ops irp_call_ops =
@ -194,7 +194,7 @@ index 22ade88..b949548 100644
device_file_destroy /* destroy */
};
diff --git a/server/directory.c b/server/directory.c
index 96555bb..26600f8 100644
index 7ffaedc..d903ff2 100644
--- a/server/directory.c
+++ b/server/directory.c
@@ -67,6 +67,7 @@ static const struct object_ops object_type_ops =
@ -339,7 +339,7 @@ index 3a0e4b4..dc653b8 100644
hook_table_destroy /* destroy */
};
diff --git a/server/mailslot.c b/server/mailslot.c
index ea28825..a745a54 100644
index 13e6703..021ef99 100644
--- a/server/mailslot.c
+++ b/server/mailslot.c
@@ -89,6 +89,7 @@ static const struct object_ops mailslot_ops =
@ -367,7 +367,7 @@ index ea28825..a745a54 100644
mailslot_device_destroy /* destroy */
};
diff --git a/server/mapping.c b/server/mapping.c
index fe30450..a612766 100644
index f82907b..7c7759b 100644
--- a/server/mapping.c
+++ b/server/mapping.c
@@ -94,6 +94,7 @@ static const struct object_ops mapping_ops =
@ -379,7 +379,7 @@ index fe30450..a612766 100644
mapping_destroy /* destroy */
};
diff --git a/server/mutex.c b/server/mutex.c
index 3693095..e96bfd0 100644
index d1887e4..a2a0a24 100644
--- a/server/mutex.c
+++ b/server/mutex.c
@@ -71,6 +71,7 @@ static const struct object_ops mutex_ops =
@ -391,7 +391,7 @@ index 3693095..e96bfd0 100644
mutex_destroy /* destroy */
};
diff --git a/server/named_pipe.c b/server/named_pipe.c
index 0661c12..eb0696e 100644
index cfee4d5..cffa254 100644
--- a/server/named_pipe.c
+++ b/server/named_pipe.c
@@ -135,6 +135,7 @@ static const struct object_ops named_pipe_ops =
@ -442,7 +442,7 @@ index ad22ec1..f5d7d9f 100644
{
return 1; /* ok to close */
diff --git a/server/object.h b/server/object.h
index 687f730..f82fb67 100644
index b5c50e1..72ad852 100644
--- a/server/object.h
+++ b/server/object.h
@@ -89,8 +89,10 @@ struct object_ops
@ -606,7 +606,7 @@ index dc10d2a..a11964f 100644
ifchange_destroy /* destroy */
};
diff --git a/server/symlink.c b/server/symlink.c
index e176267..034ecdd 100644
index 9199bc5..ecc0e43 100644
--- a/server/symlink.c
+++ b/server/symlink.c
@@ -70,6 +70,7 @@ static const struct object_ops symlink_ops =
@ -682,5 +682,5 @@ index a0be058..5f96be8 100644
desktop_destroy /* destroy */
};
--
2.8.0
2.9.0

View File

@ -1,8 +1,8 @@
From ed940af97f6488f87739b4d332101e69ed624412 Mon Sep 17 00:00:00 2001
From b8426b424f9ed456f29189459f27ab51b1a9bd7c Mon Sep 17 00:00:00 2001
From: Felix Yan <felixonmars@gmail.com>
Date: Tue, 23 Sep 2014 23:22:17 +0800
Subject: [PATCH] winex11.drv: Update a candidate window's position with
over-the-spot style. (try 2)
Subject: winex11.drv: Update a candidate window's position with over-the-spot
style. (try 2)
In the current implementation, the candidate window position of a input
method is fixed because XNSpotLocation isn't updated after an input
@ -18,14 +18,14 @@ This patch was based on the original work by Muneyuki Noguchi, and
received a lot of help from Sebastian Lackner.
---
dlls/user32/caret.c | 4 +++
dlls/user32/driver.c | 19 +++++++++--
dlls/user32/driver.c | 14 ++++++++
dlls/user32/user_private.h | 2 ++
dlls/winex11.drv/winex11.drv.spec | 1 +
dlls/winex11.drv/xim.c | 72 ++++++++++++++++++++++++++++++++++++++-
5 files changed, 95 insertions(+), 3 deletions(-)
5 files changed, 92 insertions(+), 1 deletion(-)
diff --git a/dlls/user32/caret.c b/dlls/user32/caret.c
index 53bb5b4..fff9e3e 100644
index 686dade..d1cde7f 100644
--- a/dlls/user32/caret.c
+++ b/dlls/user32/caret.c
@@ -30,6 +30,8 @@
@ -54,18 +54,18 @@ index 53bb5b4..fff9e3e 100644
}
return ret;
diff --git a/dlls/user32/driver.c b/dlls/user32/driver.c
index e0bc38c..0e8b007 100644
index 32acf28..33648b8 100644
--- a/dlls/user32/driver.c
+++ b/dlls/user32/driver.c
@@ -154,6 +154,7 @@ static const USER_DRIVER *load_driver(void)
@@ -155,6 +155,7 @@ static const USER_DRIVER *load_driver(void)
GET_USER_FUNC(WindowPosChanging);
GET_USER_FUNC(WindowPosChanged);
GET_USER_FUNC(SystemParametersInfo);
+ GET_USER_FUNC(UpdateCandidatePos);
GET_USER_FUNC(ThreadDetach);
#undef GET_USER_FUNC
}
@@ -512,6 +513,10 @@ static BOOL CDECL nulldrv_SystemParametersInfo( UINT action, UINT int_param, voi
@@ -513,6 +514,10 @@ static BOOL CDECL nulldrv_SystemParametersInfo( UINT action, UINT int_param, voi
return FALSE;
}
@ -73,21 +73,19 @@ index e0bc38c..0e8b007 100644
+{
+}
+
static USER_DRIVER null_driver =
static void CDECL nulldrv_ThreadDetach( void )
{
/* keyboard functions */
@@ -572,7 +577,9 @@ static USER_DRIVER null_driver =
nulldrv_WindowPosChanging,
}
@@ -578,6 +583,8 @@ static USER_DRIVER null_driver =
nulldrv_WindowPosChanged,
/* system parameters */
- nulldrv_SystemParametersInfo
+ nulldrv_SystemParametersInfo,
nulldrv_SystemParametersInfo,
+ /* candidate pos functions */
+ nulldrv_UpdateCandidatePos
+ nulldrv_UpdateCandidatePos,
/* thread management */
nulldrv_ThreadDetach
};
@@ -767,6 +774,12 @@ static BOOL CDECL loaderdrv_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDW
@@ -774,6 +781,11 @@ static BOOL CDECL loaderdrv_UpdateLayeredWindow( HWND hwnd, const UPDATELAYEREDW
return load_driver()->pUpdateLayeredWindow( hwnd, info, window_rect );
}
@ -95,22 +93,21 @@ index e0bc38c..0e8b007 100644
+{
+ load_driver()->pUpdateCandidatePos( hwnd, caret_rect );
+}
+
+
static USER_DRIVER lazy_load_driver =
{
/* keyboard functions */
@@ -827,5 +840,7 @@ static USER_DRIVER lazy_load_driver =
nulldrv_WindowPosChanging,
@@ -835,6 +847,8 @@ static USER_DRIVER lazy_load_driver =
nulldrv_WindowPosChanged,
/* system parameters */
- nulldrv_SystemParametersInfo
+ nulldrv_SystemParametersInfo,
nulldrv_SystemParametersInfo,
+ /* candidate pos functions */
+ loaderdrv_UpdateCandidatePos
+ loaderdrv_UpdateCandidatePos,
/* thread management */
nulldrv_ThreadDetach
};
diff --git a/dlls/user32/user_private.h b/dlls/user32/user_private.h
index adf3f7d..6202818 100644
index 68aa699..cba4aa9 100644
--- a/dlls/user32/user_private.h
+++ b/dlls/user32/user_private.h
@@ -117,6 +117,8 @@ typedef struct tagUSER_DRIVER {
@ -119,11 +116,11 @@ index adf3f7d..6202818 100644
BOOL (CDECL *pSystemParametersInfo)(UINT,UINT,void*,UINT);
+ /* candidate pos functions */
+ void (CDECL *pUpdateCandidatePos)(HWND,const RECT *);
/* thread management */
void (CDECL *pThreadDetach)(void);
} USER_DRIVER;
extern const USER_DRIVER *USER_Driver DECLSPEC_HIDDEN;
diff --git a/dlls/winex11.drv/winex11.drv.spec b/dlls/winex11.drv/winex11.drv.spec
index b6e5c05..2a0d737 100644
index 7cdce52..167ecb2 100644
--- a/dlls/winex11.drv/winex11.drv.spec
+++ b/dlls/winex11.drv/winex11.drv.spec
@@ -53,6 +53,7 @@
@ -135,7 +132,7 @@ index b6e5c05..2a0d737 100644
# WinTab32
@ cdecl AttachEventQueueToTablet(long) X11DRV_AttachEventQueueToTablet
diff --git a/dlls/winex11.drv/xim.c b/dlls/winex11.drv/xim.c
index e0548b8..187323f 100644
index e51169d..069115d 100644
--- a/dlls/winex11.drv/xim.c
+++ b/dlls/winex11.drv/xim.c
@@ -31,6 +31,7 @@
@ -238,5 +235,5 @@ index e0548b8..187323f 100644
return xic;
}
--
2.1.0
2.9.0