annotate etc/emacsstrs.sco @ 5043:d0c14ea98592

various frame-geometry fixes -------------------- ChangeLog entries follow: -------------------- src/ChangeLog addition: 2010-02-15 Ben Wing <ben@xemacs.org> * EmacsFrame.c: * EmacsFrame.c (EmacsFrameResize): * console-msw-impl.h: * console-msw-impl.h (struct mswindows_frame): * console-msw-impl.h (FRAME_MSWINDOWS_TARGET_RECT): * device-tty.c: * device-tty.c (tty_asynch_device_change): * event-msw.c: * event-msw.c (mswindows_wnd_proc): * faces.c (Fface_list): * faces.h: * frame-gtk.c: * frame-gtk.c (gtk_set_initial_frame_size): * frame-gtk.c (gtk_set_frame_size): * frame-msw.c: * frame-msw.c (mswindows_init_frame_1): * frame-msw.c (mswindows_set_frame_size): * frame-msw.c (mswindows_size_frame_internal): * frame-msw.c (msprinter_init_frame_3): * frame.c: * frame.c (enum): * frame.c (Fmake_frame): * frame.c (adjust_frame_size): * frame.c (store_minibuf_frame_prop): * frame.c (Fframe_property): * frame.c (Fframe_properties): * frame.c (Fframe_displayable_pixel_height): * frame.c (Fframe_displayable_pixel_width): * frame.c (internal_set_frame_size): * frame.c (Fset_frame_height): * frame.c (Fset_frame_pixel_height): * frame.c (Fset_frame_displayable_pixel_height): * frame.c (Fset_frame_width): * frame.c (Fset_frame_pixel_width): * frame.c (Fset_frame_displayable_pixel_width): * frame.c (Fset_frame_size): * frame.c (Fset_frame_pixel_size): * frame.c (Fset_frame_displayable_pixel_size): * frame.c (frame_conversion_internal_1): * frame.c (get_frame_displayable_pixel_size): * frame.c (change_frame_size_1): * frame.c (change_frame_size): * frame.c (generate_title_string): * frame.h: * gtk-xemacs.c: * gtk-xemacs.c (gtk_xemacs_size_request): * gtk-xemacs.c (gtk_xemacs_size_allocate): * gtk-xemacs.c (gtk_xemacs_paint): * gutter.c: * gutter.c (update_gutter_geometry): * redisplay.c (end_hold_frame_size_changes): * redisplay.c (redisplay_frame): * toolbar.c: * toolbar.c (update_frame_toolbars_geometry): * window.c: * window.c (frame_pixsize_valid_p): * window.c (check_frame_size): Various fixes to frame geometry to make it a bit easier to understand and fix some bugs. 1. IMPORTANT: Some renamings. Will need to be applied carefully to the carbon repository, in the following order: -- pixel_to_char_size -> pixel_to_frame_unit_size -- char_to_pixel_size -> frame_unit_to_pixel_size -- pixel_to_real_char_size -> pixel_to_char_size -- char_to_real_pixel_size -> char_to_pixel_size -- Reverse second and third arguments of change_frame_size() and change_frame_size_1() to try to make functions consistent in putting width before height. -- Eliminate old round_size_to_char, because it didn't really do anything differently from round_size_to_real_char() -- round_size_to_real_char -> round_size_to_char; any places that called the old round_size_to_char should just call the new one. 2. IMPORTANT FOR CARBON: The set_frame_size() method is now passed sizes in "frame units", like all other frame-sizing functions, rather than some hacked-up combination of char-cell units and total pixel size. This only affects window systems that use "pixelated geometry", and I'm not sure if Carbon is one of them. MS Windows is pixelated, X and GTK are not. For pixelated-geometry systems, the size in set_frame_size() is in displayable pixels rather than total pixels and needs to be converted appropriately; take a look at the changes made to mswindows_set_frame_size() method if necessary. 3. Add a big long comment in frame.c describing how frame geometry works. 4. Remove MS Windows-specific character height and width fields, duplicative and unused. 5. frame-displayable-pixel-* and set-frame-displayable-pixel-* didn't use to work on MS Windows, but they do now. 6. In general, clean up the handling of "pixelated geometry" so that fewer functions have to worry about this. This is really an abomination that should be removed entirely but that will have to happen later. Fix some buggy code in frame_conversion_internal() that happened to "work" because it was countered by oppositely buggy code in change_frame_size(). 7. Clean up some frame-size code in toolbar.c and use functions already provided in frame.c instead of rolling its own. 8. Fix check_frame_size() in window.c, which formerly didn't take pixelated geometry into account.
author Ben Wing <ben@xemacs.org>
date Mon, 15 Feb 2010 22:14:11 -0600
parents 376386a54a3c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
1 String key values
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
2 "\033[M" Function #1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
3 "\033[N" Function #2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
4 "\033[O" Function #3
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
5 "\033[P" Function #4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
6 "\033[Q" Function #5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
7 "\033[R" Function #6
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
8 "\033[S" Function #7
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
9 "\033[T" Function #8
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
10 "\033[U" Function #9
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
11 "\033[V" Function #10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
12 "\033[W" Function #11
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
13 "\033[X" Function #12
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
14 "\033[Y" Shift Function #1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
15 "\033[Z" Shift Function #2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
16 "\033[a" Shift Function #3
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
17 "\033[b" Shift Function #4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
18 "\033[c" Shift Function #5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
19 "\033[d" Shift Function #6
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
20 "\033[e" Shift Function #7
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
21 "\033[f" Shift Function #8
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
22 "\033[g" Shift Function #9
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
23 "\033[h" Shift Function #10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
24 "\033[i" Shift Function #11
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
25 "\033[j" Shift Function #12
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
26 "\033[k" Control Function #1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
27 "\033[l" Control Function #2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
28 "\033[m" Control Function #3
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
29 "\033[n" Control Function #4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
30 "\033[o" Control Function #5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
31 "\033[p" Control Function #6
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
32 "\033[q" Control Function #7
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
33 "\033[r" Control Function #8
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
34 "\033[s" Control Function #9
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
35 "\033[t" Control Function #10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
36 "\033[u" Control Function #11
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
37 "\033[v" Control Function #12
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
38 "\033[w" Ctrl/Shft Function #1
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
39 "\033[x" Ctrl/Shft Function #2
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
40 "\033[y" Ctrl/Shft Function #3
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
41 "\033[z" Ctrl/Shft Function #4
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
42 "\033[@" Ctrl/Shft Function #5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
43 "\033[[" Ctrl/Shft Function #6
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
44 "\033[\\" Ctrl/Shft Function #7
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
45 "\033[]" Ctrl/Shft Function #8
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
46 "\033[^" Ctrl/Shft Function #9
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
47 "\033[_" Ctrl/Shft Function #10
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
48 "\033[`" Ctrl/Shft Function #11
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
49 "\033[{" Ctrl/Shft Function #12
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
50 "\033[H" Home
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
51 "\033[A" Up arrow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
52 "\033[I" Page up
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
53 "\033[-" -
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
54 "\033[D" Left arrow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
55 "\033[E" 5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
56 "\033[C" Right arrow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
57 "\033[+" +
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
58 "\033[F" End
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
59 "\033[B" Down arrow
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
60 "\033[G" Page down
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
61 "\033[L" Insert
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
62 "\033]A" Shift Home
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
63 "\033]B" Shift Up
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
64 "\033]C" Shift PgUp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
65 "\033]D" Shift Left
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
66 "\033]E" Shift Right
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
67 "\033]F" Shift End
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
68 "\033]G" Shift Down
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
69 "\033]H" Shift PgDn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
70 "\033]I" Shift Insert
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
71 "\033]J" Shift Delete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
72 "\033]K" Ctrl Home
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
73 "\033]L" Ctrl Up
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
74 "\033]M" Ctrl PgUp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
75 "\033]N" Ctrl Left
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
76 "\033]O" Ctrl Right
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
77 "\033]P" Ctrl End
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
78 "\033]Q" Ctrl Down
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
79 "\033]R" Ctrl PgDn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
80 "\033]S" Ctrl Insert
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
81 "\033]T" Ctrl Delete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
82 "\033]U" Alt Home
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
83 "\033]V" Alt Up
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
84 "\033]W" Alt PgUp
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
85 "\033]X" Alt Left
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
86 "\033]Y" Alt Right
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
87 "\033]Z" Alt End
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
88 "\033]a" Alt Down
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
89 "\033]b" Alt PgDn
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
90 "\033]c" Alt Insert
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
91 "\033]d" Alt Delete
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
92 "\033]e" Ctrl Keypad +
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
93 "\033]f" Ctrl Keypad -
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
94 "\033]g" Ctrl Keypad 5
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
95 "\033]h" Alt Keypad +
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
96 "\033]i" Alt Keypad -
376386a54a3c Import from CVS: tag r19-14
cvs
parents:
diff changeset
97 "\033]j" Alt Keypad 5