|
@@ -73,9 +73,11 @@ slop::SlopSelection slop::SlopSelect( slop::SlopOptions* options, bool* cancelle
|
73
|
73
|
resource = new Resource();
|
74
|
74
|
// Set up x11 temporarily
|
75
|
75
|
x11 = new X11(options->xdisplay);
|
76
|
|
- XErrorHandler ph = XSetErrorHandler(slop::TmpXError);
|
77
|
|
- keyboard = new Keyboard( x11 );
|
78
|
|
- XSetErrorHandler(ph);
|
|
76
|
+ if ( !options->nokeyboard ) {
|
|
77
|
+ XErrorHandler ph = XSetErrorHandler(slop::TmpXError);
|
|
78
|
+ keyboard = new Keyboard( x11 );
|
|
79
|
+ XSetErrorHandler(ph);
|
|
80
|
+ }
|
79
|
81
|
bool success = false;
|
80
|
82
|
std::string errorstring = "";
|
81
|
83
|
SlopWindow* window;
|
|
@@ -126,7 +128,9 @@ slop::SlopSelection slop::XShapeSlopSelect( slop::SlopOptions* options, bool* ca
|
126
|
128
|
// This is where we'll run through all of our stuffs
|
127
|
129
|
while( memory.running ) {
|
128
|
130
|
slop::mouse->update();
|
129
|
|
- slop::keyboard->update();
|
|
131
|
+ if ( !options->nokeyboard ) {
|
|
132
|
+ slop::keyboard->update();
|
|
133
|
+ }
|
130
|
134
|
// We move our statemachine forward.
|
131
|
135
|
memory.update( 1 );
|
132
|
136
|
|
|
@@ -139,7 +143,7 @@ slop::SlopSelection slop::XShapeSlopSelect( slop::SlopOptions* options, bool* ca
|
139
|
143
|
std::this_thread::sleep_for(std::chrono::milliseconds(10));
|
140
|
144
|
|
141
|
145
|
// Then we draw the framebuffer to the screen
|
142
|
|
- if ( (slop::keyboard->anyKeyDown() && !options->nokeyboard) || slop::mouse->getButton( 3 ) ) {
|
|
146
|
+ if ( (!options->nokeyboard && slop::keyboard->anyKeyDown()) || slop::mouse->getButton( 3 ) ) {
|
143
|
147
|
memory.running = false;
|
144
|
148
|
if ( cancelled ) {
|
145
|
149
|
*cancelled = true;
|
|
@@ -173,7 +177,9 @@ slop::SlopSelection slop::GLSlopSelect( slop::SlopOptions* options, bool* cancel
|
173
|
177
|
// This is where we'll run through all of our stuffs
|
174
|
178
|
while( memory.running ) {
|
175
|
179
|
slop::mouse->update();
|
176
|
|
- slop::keyboard->update();
|
|
180
|
+ if ( !options->nokeyboard ) {
|
|
181
|
+ slop::keyboard->update();
|
|
182
|
+ }
|
177
|
183
|
// We move our statemachine forward.
|
178
|
184
|
memory.update( 1 );
|
179
|
185
|
|
|
@@ -191,7 +197,7 @@ slop::SlopSelection slop::GLSlopSelect( slop::SlopOptions* options, bool* cancel
|
191
|
197
|
if ( err != GL_NO_ERROR ) {
|
192
|
198
|
throw err;
|
193
|
199
|
}
|
194
|
|
- if ( (slop::keyboard->anyKeyDown() && !options->nokeyboard) || slop::mouse->getButton( 3 ) ) {
|
|
200
|
+ if ( (!options->nokeyboard && slop::keyboard->anyKeyDown()) || slop::mouse->getButton( 3 ) ) {
|
195
|
201
|
memory.running = false;
|
196
|
202
|
if ( cancelled ) {
|
197
|
203
|
*cancelled = true;
|