default_protocol = DEFAULT_PROTOCOL;
default_port = DEFAULT_PORT;
- do_defaults(NULL);
+ do_defaults(NULL, &cfg);
p = cmdline;
while (*p && isspace(*p)) p++;
* An initial @ means to activate a saved session.
*/
if (*p == '@') {
- do_defaults (p+1);
+ do_defaults (p+1, &cfg);
if (!*cfg.host && !do_config()) {
WSACleanup();
return 0;
if (cfg.fontisbold) {
fw_dontcare = FW_BOLD;
- fw_bold = FW_BLACK;
+ fw_bold = FW_HEAVY;
} else {
fw_dontcare = FW_DONTCARE;
fw_bold = FW_BOLD;
int r, i, code;
unsigned char * p = output;
-static WORD keys[3];
-static int compose_state = 0;
-static int compose_char = 0;
-static WPARAM compose_key = 0;
+ static WORD keys[3];
+ static int compose_state = 0;
+ static int compose_char = 0;
+ static WPARAM compose_key = 0;
r = GetKeyboardState(keystate);
if (!r) memset(keystate, 0, sizeof(keystate));
return p - output;
}
}
+
+ /*
+ * Finally, deal with Return ourselves. (Win95 seems to
+ * foul it up when Alt is pressed, for some reason.)
+ */
+ if (wParam == VK_RETURN) /* Return */
+ {
+ *p++ = 0x0D;
+ return p-output;
+ }
}
/* Okay we've done everything interesting; let windows deal with
}
}
-void write_clip (void *data, int len) {
+void write_clip (void *data, int len, int must_deselect) {
HGLOBAL clipdata;
void *lock;
((unsigned char *) lock) [len] = 0;
GlobalUnlock (clipdata);
- SendMessage (hwnd, WM_IGNORE_CLIP, TRUE, 0);
+ if (!must_deselect)
+ SendMessage (hwnd, WM_IGNORE_CLIP, TRUE, 0);
+
if (OpenClipboard (hwnd)) {
EmptyClipboard();
SetClipboardData (CF_TEXT, clipdata);
CloseClipboard();
} else
GlobalFree (clipdata);
- SendMessage (hwnd, WM_IGNORE_CLIP, FALSE, 0);
+
+ if (!must_deselect)
+ SendMessage (hwnd, WM_IGNORE_CLIP, FALSE, 0);
}
void get_clip (void **p, int *len) {