Keymap: better default window size.
Use a larger default window size so the keymap is readable. However, size it down on low resolution displays. Fixes #14892 Change-Id: Id35c46fa14bef570f78d8f065d95f6e6d8f0c6d7 Reviewed-on: https://review.haiku-os.org/c/haiku/+/1312 Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
committed by
waddlesplash
parent
24f8ae4156
commit
bd514095bb
@@ -73,6 +73,8 @@ static const char* kDeadKeyTriggerNone = "<none>";
|
|||||||
static const char* kCurrentKeymapName = "(Current)";
|
static const char* kCurrentKeymapName = "(Current)";
|
||||||
static const char* kDefaultKeymapName = "US-International";
|
static const char* kDefaultKeymapName = "US-International";
|
||||||
|
|
||||||
|
static const float kDefaultHeight = 440;
|
||||||
|
static const float kDefaultWidth = 1000;
|
||||||
|
|
||||||
static int
|
static int
|
||||||
compare_key_list_items(const void* a, const void* b)
|
compare_key_list_items(const void* a, const void* b)
|
||||||
@@ -82,12 +84,24 @@ compare_key_list_items(const void* a, const void* b)
|
|||||||
return BLocale::Default()->StringCompare(item1->Text(), item2->Text());
|
return BLocale::Default()->StringCompare(item1->Text(), item2->Text());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
KeymapWindow::KeymapWindow()
|
KeymapWindow::KeymapWindow()
|
||||||
:
|
:
|
||||||
BWindow(BRect(80, 50, 650, 300), B_TRANSLATE_SYSTEM_NAME("Keymap"),
|
BWindow(BRect(80, 50, kDefaultWidth, kDefaultHeight),
|
||||||
B_TITLED_WINDOW, B_ASYNCHRONOUS_CONTROLS | B_AUTO_UPDATE_SIZE_LIMITS)
|
B_TRANSLATE_SYSTEM_NAME("Keymap"), B_TITLED_WINDOW,
|
||||||
|
B_ASYNCHRONOUS_CONTROLS | B_AUTO_UPDATE_SIZE_LIMITS)
|
||||||
{
|
{
|
||||||
|
// If the window doesn't fit the screen, make it smaller but keep the
|
||||||
|
// aspect ratio
|
||||||
|
BScreen screen(this);
|
||||||
|
display_mode mode;
|
||||||
|
status_t status = screen.GetMode(&mode);
|
||||||
|
if(status == B_OK && (mode.virtual_width <= kDefaultWidth
|
||||||
|
|| mode.virtual_height <= kDefaultHeight)) {
|
||||||
|
float width = mode.virtual_width - 64;
|
||||||
|
ResizeTo(mode.virtual_width - 64,
|
||||||
|
width * kDefaultHeight / kDefaultWidth);
|
||||||
|
}
|
||||||
|
|
||||||
fKeyboardLayoutView = new KeyboardLayoutView("layout");
|
fKeyboardLayoutView = new KeyboardLayoutView("layout");
|
||||||
fKeyboardLayoutView->SetKeymap(&fCurrentMap);
|
fKeyboardLayoutView->SetKeymap(&fCurrentMap);
|
||||||
fKeyboardLayoutView->SetExplicitMinSize(BSize(B_SIZE_UNSET, 192));
|
fKeyboardLayoutView->SetExplicitMinSize(BSize(B_SIZE_UNSET, 192));
|
||||||
|
|||||||
Reference in New Issue
Block a user