mirror of
https://github.com/ocornut/imgui.git
synced 2024-11-28 00:39:02 +08:00
InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip).
This commit is contained in:
parent
5741cbae45
commit
fc50532213
@ -49,6 +49,7 @@ All changes:
|
|||||||
- Text: Tweaked rendering of three-dots "..." ellipsis variant. (#2775, #4269)
|
- Text: Tweaked rendering of three-dots "..." ellipsis variant. (#2775, #4269)
|
||||||
- InputText: Added support for Ctrl+Delete to delete up to end-of-word. (#6067) [@ajweeks]
|
- InputText: Added support for Ctrl+Delete to delete up to end-of-word. (#6067) [@ajweeks]
|
||||||
(Not adding Super+Delete to delete to up to end-of-line on OSX, as OSX doesn't have it)
|
(Not adding Super+Delete to delete to up to end-of-line on OSX, as OSX doesn't have it)
|
||||||
|
- InputText: On OSX, inhibit usage of Alt key to toggle menu when active (used for work skip).
|
||||||
- Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) [@imkcy9]
|
- Menus: Fixed layout of MenuItem()/BeginMenu() when label contains a '\n'. (#6116) [@imkcy9]
|
||||||
- PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets.
|
- PlotHistogram, PlotLines: Passing negative sizes honor alignment like other widgets.
|
||||||
- ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when
|
- ImDrawList: Added missing early-out in AddPolyline() and AddConvexPolyFilled() when
|
||||||
|
@ -4096,6 +4096,7 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_
|
|||||||
state->Stb.insert_mode = 1; // stb field name is indeed incorrect (see #2863)
|
state->Stb.insert_mode = 1; // stb field name is indeed incorrect (see #2863)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const bool is_osx = io.ConfigMacOSXBehaviors;
|
||||||
if (g.ActiveId != id && init_make_active)
|
if (g.ActiveId != id && init_make_active)
|
||||||
{
|
{
|
||||||
IM_ASSERT(state && state->ID == id);
|
IM_ASSERT(state && state->ID == id);
|
||||||
@ -4118,6 +4119,8 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_
|
|||||||
SetKeyOwner(ImGuiKey_PageUp, id);
|
SetKeyOwner(ImGuiKey_PageUp, id);
|
||||||
SetKeyOwner(ImGuiKey_PageDown, id);
|
SetKeyOwner(ImGuiKey_PageDown, id);
|
||||||
}
|
}
|
||||||
|
if (is_osx)
|
||||||
|
SetKeyOwner(ImGuiMod_Alt, id);
|
||||||
if (flags & (ImGuiInputTextFlags_CallbackCompletion | ImGuiInputTextFlags_AllowTabInput)) // Disable keyboard tabbing out as we will use the \t character.
|
if (flags & (ImGuiInputTextFlags_CallbackCompletion | ImGuiInputTextFlags_AllowTabInput)) // Disable keyboard tabbing out as we will use the \t character.
|
||||||
SetKeyOwner(ImGuiKey_Tab, id);
|
SetKeyOwner(ImGuiKey_Tab, id);
|
||||||
}
|
}
|
||||||
@ -4187,7 +4190,6 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_
|
|||||||
const float mouse_x = (io.MousePos.x - frame_bb.Min.x - style.FramePadding.x) + state->ScrollX;
|
const float mouse_x = (io.MousePos.x - frame_bb.Min.x - style.FramePadding.x) + state->ScrollX;
|
||||||
const float mouse_y = (is_multiline ? (io.MousePos.y - draw_window->DC.CursorPos.y) : (g.FontSize * 0.5f));
|
const float mouse_y = (is_multiline ? (io.MousePos.y - draw_window->DC.CursorPos.y) : (g.FontSize * 0.5f));
|
||||||
|
|
||||||
const bool is_osx = io.ConfigMacOSXBehaviors;
|
|
||||||
if (select_all)
|
if (select_all)
|
||||||
{
|
{
|
||||||
state->SelectAll();
|
state->SelectAll();
|
||||||
@ -4288,7 +4290,6 @@ bool ImGui::InputTextEx(const char* label, const char* hint, char* buf, int buf_
|
|||||||
state->Stb.row_count_per_page = row_count_per_page;
|
state->Stb.row_count_per_page = row_count_per_page;
|
||||||
|
|
||||||
const int k_mask = (io.KeyShift ? STB_TEXTEDIT_K_SHIFT : 0);
|
const int k_mask = (io.KeyShift ? STB_TEXTEDIT_K_SHIFT : 0);
|
||||||
const bool is_osx = io.ConfigMacOSXBehaviors;
|
|
||||||
const bool is_wordmove_key_down = is_osx ? io.KeyAlt : io.KeyCtrl; // OS X style: Text editing cursor movement using Alt instead of Ctrl
|
const bool is_wordmove_key_down = is_osx ? io.KeyAlt : io.KeyCtrl; // OS X style: Text editing cursor movement using Alt instead of Ctrl
|
||||||
const bool is_startend_key_down = is_osx && io.KeySuper && !io.KeyCtrl && !io.KeyAlt; // OS X style: Line/Text Start and End using Cmd+Arrows instead of Home/End
|
const bool is_startend_key_down = is_osx && io.KeySuper && !io.KeyCtrl && !io.KeyAlt; // OS X style: Line/Text Start and End using Cmd+Arrows instead of Home/End
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user