diff options
author | heiko tietze <tietze.heiko@gmail.com> | 2019-01-23 10:20:23 +0100 |
---|---|---|
committer | Heiko Tietze <tietze.heiko@gmail.com> | 2019-02-18 12:27:20 +0100 |
commit | 16bd9c99b8116f36e4f0825860e699d79cdf0d58 (patch) | |
tree | de7d4e3c183571d73a01bf7c0a5864ccb52b9e49 | |
parent | 47819ba0534ce1893d5cb835c98147feacdf9faf (diff) |
Resolves tdf#121596 - Include a key combination to insert thin spaces
uno:InsertNarrowNobreakSpace/ FN_INSERT_NNBSP added and asigned to shift+alt+space
Change-Id: I20dd4159bc35ee378bee75af9734b1f25dfd8b1a
Reviewed-on: https://gerrit.libreoffice.org/66776
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <tietze.heiko@gmail.com>
25 files changed, 134 insertions, 7 deletions
diff --git a/include/svx/svxids.hrc b/include/svx/svxids.hrc index a1b063c71e7f..408cb8175455 100644 --- a/include/svx/svxids.hrc +++ b/include/svx/svxids.hrc @@ -165,7 +165,8 @@ class SfxStringItem; #define FN_INSERT_BREAK (FN_INSERT + 3) #define FN_INSERT_SOFT_HYPHEN (FN_INSERT + 43) /* optional hyphen */ #define FN_INSERT_HARD_SPACE (FN_INSERT + 44) /* hard space */ -#define FN_INSERT_HARDHYPHEN (FN_INSERT + 85) /* hyphen without break*/ +#define FN_INSERT_NNBSP (FN_INSERT + 45) /* U+202F NARROW NO-BREAK SPACE (NNBSP) */ +#define FN_INSERT_HARDHYPHEN (FN_INSERT + 85) /* hyphen without break*/ //!! be aware to not overwrite something that is used in sw/inc/cmdid.h already !! #define FN_FORMAT (SID_SW_START + 400) diff --git a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu index ed10595365ac..39f808c92ddc 100644 --- a/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu +++ b/officecfg/registry/data/org/openoffice/Office/Accelerators.xcu @@ -1867,6 +1867,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -2644,6 +2650,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -3215,6 +3227,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -4072,6 +4090,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -4876,6 +4900,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -5632,6 +5662,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -6439,6 +6475,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> @@ -7239,6 +7281,12 @@ Ctrl+Shift+e aka E_SHIFT_MOD1 under GTK/IBUS is for some emoji thing <value xml:lang="en-US">.uno:InsertNonBreakingSpace</value> </prop> </node> + <node oor:name="SPACE_SHIFT_MOD2" oor:op="replace"> + <prop oor:name="Command"> + <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> + <value xml:lang="en-US">.uno:InsertNarrowNobreakSpace</value> + </prop> + </node> <node oor:name="SUBTRACT_MOD1" oor:op="replace"> <prop oor:name="Command"> <value xml:lang="x-no-translate">I10N SHORTCUTS - NO TRANSLATE</value> diff --git a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu index ccaed35731b0..02caa2c12297 100644 --- a/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu +++ b/officecfg/registry/data/org/openoffice/Office/UI/GenericCommands.xcu @@ -6613,17 +6613,22 @@ </node> <node oor:name=".uno:InsertHardHyphen" oor:op="replace"> <prop oor:name="Label" oor:type="xs:string"> - <value xml:lang="en-US">Non-br~eaking Hyphen</value> + <value xml:lang="en-US">Insert non-br~eaking hyphen</value> </prop> </node> <node oor:name=".uno:InsertSoftHyphen" oor:op="replace"> <prop oor:name="Label" oor:type="xs:string"> - <value xml:lang="en-US">S~oft Hyphen</value> + <value xml:lang="en-US">Insert s~oft Hyphen</value> </prop> </node> <node oor:name=".uno:InsertNonBreakingSpace" oor:op="replace"> <prop oor:name="Label" oor:type="xs:string"> - <value xml:lang="en-US">~Non-breaking Space</value> + <value xml:lang="en-US">Insert ~non-breaking space</value> + </prop> + </node> + <node oor:name=".uno:InsertNarrowNobreakSpace" oor:op="replace"> + <prop oor:name="Label" oor:type="xs:string"> + <value xml:lang="en-US">Insert n~arrow no-break space (U+202F)</value> </prop> </node> <node oor:name=".uno:InsertZWSP" oor:op="replace"> diff --git a/sc/inc/global.hxx b/sc/inc/global.hxx index 38406014c4a8..7acf8ec84a91 100644 --- a/sc/inc/global.hxx +++ b/sc/inc/global.hxx @@ -67,6 +67,7 @@ const sal_Unicode CHAR_LRM = 0x200E; const sal_Unicode CHAR_RLM = 0x200F; const sal_Unicode CHAR_NBHY = 0x2011; const sal_Unicode CHAR_ZWNBSP = 0x2060; +const sal_Unicode CHAR_NNBSP = 0x202F; //NARROW NO-BREAK SPACE #define MINDOUBLE 1.7e-307 #define MAXDOUBLE 1.7e307 diff --git a/sc/sdi/editsh.sdi b/sc/sdi/editsh.sdi index f854fe897191..23393e660a0f 100644 --- a/sc/sdi/editsh.sdi +++ b/sc/sdi/editsh.sdi @@ -93,6 +93,7 @@ interface TableText FN_INSERT_SOFT_HYPHEN [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] FN_INSERT_HARDHYPHEN [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] FN_INSERT_HARD_SPACE [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] + FN_INSERT_NNBSP [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] SID_INSERT_RLM [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] SID_INSERT_LRM [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] SID_INSERT_ZWSP [ ExecMethod = Execute; StateMethod = GetState; Export = FALSE; ] diff --git a/sc/source/ui/view/editsh.cxx b/sc/source/ui/view/editsh.cxx index d815cb19090d..1ca775cc4fb9 100644 --- a/sc/source/ui/view/editsh.cxx +++ b/sc/source/ui/view/editsh.cxx @@ -631,6 +631,9 @@ void ScEditShell::Execute( SfxRequest& rReq ) case FN_INSERT_HARD_SPACE: lclInsertCharacter( pTableView, pTopView, CHAR_NBSP ); break; + case FN_INSERT_NNBSP: + lclInsertCharacter( pTableView, pTopView, CHAR_NNBSP ); + break; case SID_INSERT_RLM: lclInsertCharacter( pTableView, pTopView, CHAR_RLM ); break; diff --git a/sc/uiconfig/scalc/menubar/menubar.xml b/sc/uiconfig/scalc/menubar/menubar.xml index 5aa7b4f8aae5..e9b93c238740 100644 --- a/sc/uiconfig/scalc/menubar/menubar.xml +++ b/sc/uiconfig/scalc/menubar/menubar.xml @@ -259,6 +259,7 @@ <menu:menuitem menu:id=".uno:InsertNonBreakingSpace"/> <menu:menuitem menu:id=".uno:InsertHardHyphen"/> <menu:menuitem menu:id=".uno:InsertSoftHyphen"/> + <menu:menuitem menu:id=".uno:InsertNarrowNobreakSpace"/> <menu:menuitem menu:id=".uno:InsertZWSP"/> <menu:menuitem menu:id=".uno:InsertZWNBSP"/> <menu:menuitem menu:id=".uno:InsertLRM"/> diff --git a/sd/sdi/ViewShellBase.sdi b/sd/sdi/ViewShellBase.sdi index cc60732b7178..49cd28c51e88 100644 --- a/sd/sdi/ViewShellBase.sdi +++ b/sd/sdi/ViewShellBase.sdi @@ -112,6 +112,11 @@ interface ViewShellBaseView ExecMethod = Execute ; StateMethod = GetState ; ] + FN_INSERT_NNBSP // status(final|play) + [ + ExecMethod = Execute ; + StateMethod = GetState ; + ] SID_INSERT_RLM [ ExecMethod = Execute ; diff --git a/sd/sdi/_drvwsh.sdi b/sd/sdi/_drvwsh.sdi index e0638004ec9f..25332e7f4487 100644 --- a/sd/sdi/_drvwsh.sdi +++ b/sd/sdi/_drvwsh.sdi @@ -323,6 +323,11 @@ interface DrawView ExecMethod = FuTemporary ; StateMethod = GetMenuState ; ] + FN_INSERT_NNBSP // status(final|play) + [ + ExecMethod = FuTemporary ; + StateMethod = GetMenuState ; + ] SID_INSERT_RLM [ ExecMethod = FuTemporary ; diff --git a/sd/sdi/outlnvsh.sdi b/sd/sdi/outlnvsh.sdi index 16458f5db190..a804e5296618 100644 --- a/sd/sdi/outlnvsh.sdi +++ b/sd/sdi/outlnvsh.sdi @@ -161,6 +161,11 @@ interface OutlineView ExecMethod = FuTemporaryModify ; StateMethod = GetMenuState ; ] + FN_INSERT_NNBSP // status(final|play) + [ + ExecMethod = FuTemporaryModify ; + StateMethod = GetMenuState ; + ] SID_INSERT_RLM [ ExecMethod = FuTemporary ; diff --git a/sd/source/ui/func/fubullet.cxx b/sd/source/ui/func/fubullet.cxx index 3f9527f92200..bb29428130d6 100644 --- a/sd/source/ui/func/fubullet.cxx +++ b/sd/source/ui/func/fubullet.cxx @@ -52,6 +52,7 @@ const sal_Unicode CHAR_RLM = u'\x200F'; const sal_Unicode CHAR_LRM = u'\x200E'; const sal_Unicode CHAR_ZWSP = u'\x200B'; const sal_Unicode CHAR_ZWNBSP = u'\x2060'; +const sal_Unicode CHAR_NNBSP = u'\x202F'; //NARROW NO-BREAK SPACE FuBullet::FuBullet ( @@ -83,6 +84,7 @@ void FuBullet::DoExecute( SfxRequest& rReq ) case FN_INSERT_SOFT_HYPHEN: cMark = CHAR_SOFTHYPHEN ; break; case FN_INSERT_HARDHYPHEN: cMark = CHAR_HARDHYPHEN ; break; case FN_INSERT_HARD_SPACE: cMark = CHAR_HARDBLANK ; break; + case FN_INSERT_NNBSP: cMark = CHAR_NNBSP ; break; case SID_INSERT_RLM : cMark = CHAR_RLM ; break; case SID_INSERT_LRM : cMark = CHAR_LRM ; break; case SID_INSERT_ZWSP : cMark = CHAR_ZWSP ; break; @@ -281,6 +283,7 @@ void FuBullet::GetSlotState( SfxItemSet& rSet, ViewShell const * pViewShell, Sfx SfxItemState::DEFAULT == rSet.GetItemState( FN_INSERT_SOFT_HYPHEN ) || SfxItemState::DEFAULT == rSet.GetItemState( FN_INSERT_HARDHYPHEN ) || SfxItemState::DEFAULT == rSet.GetItemState( FN_INSERT_HARD_SPACE ) || + SfxItemState::DEFAULT == rSet.GetItemState( FN_INSERT_NNBSP ) || SfxItemState::DEFAULT == rSet.GetItemState( SID_INSERT_RLM ) || SfxItemState::DEFAULT == rSet.GetItemState( SID_INSERT_LRM ) || SfxItemState::DEFAULT == rSet.GetItemState( SID_INSERT_ZWNBSP ) || @@ -300,6 +303,7 @@ void FuBullet::GetSlotState( SfxItemSet& rSet, ViewShell const * pViewShell, Sfx rSet.DisableItem(FN_INSERT_SOFT_HYPHEN); rSet.DisableItem(FN_INSERT_HARDHYPHEN); rSet.DisableItem(FN_INSERT_HARD_SPACE); + rSet.DisableItem(FN_INSERT_NNBSP); rSet.DisableItem(SID_INSERT_ZWNBSP); rSet.DisableItem(SID_INSERT_ZWSP); } diff --git a/sd/source/ui/view/drviews2.cxx b/sd/source/ui/view/drviews2.cxx index d7bf382f5ec3..58297a8bc942 100644 --- a/sd/source/ui/view/drviews2.cxx +++ b/sd/source/ui/view/drviews2.cxx @@ -1448,6 +1448,7 @@ void DrawViewShell::FuTemporary(SfxRequest& rReq) case FN_INSERT_SOFT_HYPHEN: case FN_INSERT_HARDHYPHEN: case FN_INSERT_HARD_SPACE: + case FN_INSERT_NNBSP: case SID_INSERT_RLM : case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : diff --git a/sd/source/ui/view/outlnvs2.cxx b/sd/source/ui/view/outlnvs2.cxx index 867ebe45bc4f..4fd762de736a 100644 --- a/sd/source/ui/view/outlnvs2.cxx +++ b/sd/source/ui/view/outlnvs2.cxx @@ -384,6 +384,7 @@ void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq) case FN_INSERT_SOFT_HYPHEN: case FN_INSERT_HARDHYPHEN: case FN_INSERT_HARD_SPACE: + case FN_INSERT_NNBSP: case SID_INSERT_RLM : case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : diff --git a/sd/uiconfig/sdraw/menubar/menubar.xml b/sd/uiconfig/sdraw/menubar/menubar.xml index 4ebc5cf917fa..6283b9a357dc 100644 --- a/sd/uiconfig/sdraw/menubar/menubar.xml +++ b/sd/uiconfig/sdraw/menubar/menubar.xml @@ -210,6 +210,7 @@ <menu:menuitem menu:id=".uno:InsertNonBreakingSpace"/> <menu:menuitem menu:id=".uno:InsertHardHyphen"/> <menu:menuitem menu:id=".uno:InsertSoftHyphen"/> + <menu:menuitem menu:id=".uno:InsertNarrowNobreakSpace"/> <menu:menuitem menu:id=".uno:InsertZWSP"/> <menu:menuitem menu:id=".uno:InsertZWNBSP"/> <menu:menuitem menu:id=".uno:InsertLRM"/> diff --git a/sd/uiconfig/simpress/menubar/menubar.xml b/sd/uiconfig/simpress/menubar/menubar.xml index 0e8b2f0ccbf3..47b7de880344 100644 --- a/sd/uiconfig/simpress/menubar/menubar.xml +++ b/sd/uiconfig/simpress/menubar/menubar.xml @@ -240,6 +240,7 @@ <menu:menuitem menu:id=".uno:InsertNonBreakingSpace"/> <menu:menuitem menu:id=".uno:InsertHardHyphen"/> <menu:menuitem menu:id=".uno:InsertSoftHyphen"/> + <menu:menuitem menu:id=".uno:InsertNarrowNobreakSpace"/> <menu:menuitem menu:id=".uno:InsertZWSP"/> <menu:menuitem menu:id=".uno:InsertZWNBSP"/> <menu:menuitem menu:id=".uno:InsertLRM"/> diff --git a/svx/sdi/svx.sdi b/svx/sdi/svx.sdi index 1577acf4a4c6..3b3669358ac3 100644 --- a/svx/sdi/svx.sdi +++ b/svx/sdi/svx.sdi @@ -10838,6 +10838,22 @@ SfxVoidItem InsertNonBreakingSpace FN_INSERT_HARD_SPACE GroupId = SfxGroupId::Insert; ] +SfxVoidItem InsertNarrowNobreakSpace FN_INSERT_NNBSP +() +[ + AutoUpdate = FALSE, + FastCall = TRUE, + ReadOnlyDoc = FALSE, + Toggle = FALSE, + Container = FALSE, + RecordAbsolute = FALSE, + RecordPerSet; + + AccelConfig = TRUE, + MenuConfig = TRUE, + ToolBoxConfig = TRUE, + GroupId = SfxGroupId::Insert; +] SfxVoidItem ManageLanguage SID_BASICIDE_MANAGE_LANG () diff --git a/sw/inc/swtypes.hxx b/sw/inc/swtypes.hxx index 37f369c4c794..b37c36407a72 100644 --- a/sw/inc/swtypes.hxx +++ b/sw/inc/swtypes.hxx @@ -175,6 +175,7 @@ constexpr bool SW_ISPRINTABLE(sal_Unicode c) { return c >= ' ' && 127 != c; } #define CHAR_LRM u'\x200E' #define CHAR_ZWSP u'\x200B' #define CHAR_ZWNBSP u'\x2060' +#define CHAR_NNBSP u'\x202F' //NARROW NO-BREAK SPACE // Returns the APP - CharClass instance - used for all ToUpper/ToLower/... SW_DLLPUBLIC CharClass& GetAppCharClass(); diff --git a/sw/sdi/_textsh.sdi b/sw/sdi/_textsh.sdi index 3724ee041ecc..bba7583b1d04 100644 --- a/sw/sdi/_textsh.sdi +++ b/sw/sdi/_textsh.sdi @@ -219,6 +219,12 @@ interface BaseText StateMethod = NoState ; DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; ] + FN_INSERT_NNBSP // status(final|play) + [ + ExecMethod = ExecInsert ; + StateMethod = NoState ; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] SID_INSERT_RLM [ ExecMethod = ExecInsert ; diff --git a/sw/sdi/annotsh.sdi b/sw/sdi/annotsh.sdi index 263f1e7f05f8..f8bd227b6873 100644 --- a/sw/sdi/annotsh.sdi +++ b/sw/sdi/annotsh.sdi @@ -92,6 +92,13 @@ interface Annotation : _Annotation DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; ] + FN_INSERT_NNBSP // status(final|play) + [ + ExecMethod = Exec ; + StateMethod = NoState ; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] + SID_INSERT_RLM [ ExecMethod = Exec ; diff --git a/sw/sdi/drwtxtsh.sdi b/sw/sdi/drwtxtsh.sdi index a8e79c298b4f..7ad13589d2d0 100644 --- a/sw/sdi/drwtxtsh.sdi +++ b/sw/sdi/drwtxtsh.sdi @@ -147,6 +147,12 @@ interface TextDrawText StateMethod = NoState ; DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; ] + FN_INSERT_NNBSP // status(final|play) + [ + ExecMethod = ExecDraw ; + StateMethod = NoState ; + DisableFlags="SfxDisableFlags::SwOnProtectedCursor"; + ] SID_INSERT_RLM [ ExecMethod = ExecDraw ; diff --git a/sw/source/uibase/shells/annotsh.cxx b/sw/source/uibase/shells/annotsh.cxx index 6bc570387af3..d4fef3b5f36b 100644 --- a/sw/source/uibase/shells/annotsh.cxx +++ b/sw/source/uibase/shells/annotsh.cxx @@ -405,6 +405,7 @@ void SwAnnotationShell::Exec( SfxRequest &rReq ) case FN_INSERT_SOFT_HYPHEN: case FN_INSERT_HARDHYPHEN: case FN_INSERT_HARD_SPACE: + case FN_INSERT_NNBSP: case SID_INSERT_RLM : case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : @@ -416,6 +417,7 @@ void SwAnnotationShell::Exec( SfxRequest &rReq ) case FN_INSERT_SOFT_HYPHEN: cIns = CHAR_SOFTHYPHEN; break; case FN_INSERT_HARDHYPHEN: cIns = CHAR_HARDHYPHEN; break; case FN_INSERT_HARD_SPACE: cIns = CHAR_HARDBLANK; break; + case FN_INSERT_NNBSP: cIns = CHAR_NNBSP; break; case SID_INSERT_RLM : cIns = CHAR_RLM ; break; case SID_INSERT_LRM : cIns = CHAR_LRM ; break; case SID_INSERT_ZWSP : cIns = CHAR_ZWSP ; break; diff --git a/sw/source/uibase/shells/drwtxtsh.cxx b/sw/source/uibase/shells/drwtxtsh.cxx index f839e71615cf..532b92a56c5d 100644 --- a/sw/source/uibase/shells/drwtxtsh.cxx +++ b/sw/source/uibase/shells/drwtxtsh.cxx @@ -363,6 +363,7 @@ void SwDrawTextShell::ExecDraw(SfxRequest &rReq) case FN_INSERT_SOFT_HYPHEN: case FN_INSERT_HARDHYPHEN: case FN_INSERT_HARD_SPACE: + case FN_INSERT_NNBSP: case SID_INSERT_RLM : case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : @@ -374,6 +375,7 @@ void SwDrawTextShell::ExecDraw(SfxRequest &rReq) case FN_INSERT_SOFT_HYPHEN: cIns = CHAR_SOFTHYPHEN; break; case FN_INSERT_HARDHYPHEN: cIns = CHAR_HARDHYPHEN; break; case FN_INSERT_HARD_SPACE: cIns = CHAR_HARDBLANK; break; + case FN_INSERT_NNBSP: cIns = CHAR_NNBSP; break; case SID_INSERT_RLM : cIns = CHAR_RLM ; break; case SID_INSERT_LRM : cIns = CHAR_LRM ; break; case SID_INSERT_ZWSP : cIns = CHAR_ZWSP ; break; diff --git a/sw/source/uibase/shells/textsh.cxx b/sw/source/uibase/shells/textsh.cxx index 58e9648c9c7d..c9526288ea59 100644 --- a/sw/source/uibase/shells/textsh.cxx +++ b/sw/source/uibase/shells/textsh.cxx @@ -174,6 +174,7 @@ void SwTextShell::ExecInsert(SfxRequest &rReq) } break; + case FN_INSERT_NNBSP: // shift+mod2/alt+space inserts some other character w/o going through SwEditWin::KeyInput(), at least on macOS case SID_INSERT_RLM : case SID_INSERT_LRM : case SID_INSERT_ZWNBSP : @@ -186,6 +187,7 @@ void SwTextShell::ExecInsert(SfxRequest &rReq) case SID_INSERT_LRM : cIns = CHAR_LRM ; break; case SID_INSERT_ZWSP : cIns = CHAR_ZWSP ; break; case SID_INSERT_ZWNBSP: cIns = CHAR_ZWNBSP; break; + case FN_INSERT_NNBSP: cIns = CHAR_NNBSP; break; } rSh.Insert( OUString( cIns ) ); } diff --git a/sw/source/uibase/uiview/view.cxx b/sw/source/uibase/uiview/view.cxx index af8a22b53001..63febf29b44a 100644 --- a/sw/source/uibase/uiview/view.cxx +++ b/sw/source/uibase/uiview/view.cxx @@ -593,11 +593,12 @@ void SwView::CheckReadonlyState() SID_UNDO, SID_REDO, SID_REPEAT, SID_PASTE, SID_PASTE_UNFORMATTED, - SID_PASTE_SPECIAL, SID_SBA_BRW_INSERT, + SID_PASTE_SPECIAL, SID_SBA_BRW_INSERT, SID_BACKGROUND_COLOR, FN_INSERT_BOOKMARK, SID_CHARMAP_CONTROL, SID_CHARMAP, SID_EMOJI_CONTROL, FN_INSERT_SOFT_HYPHEN, - FN_INSERT_HARDHYPHEN, FN_INSERT_HARD_SPACE, FN_INSERT_BREAK, - FN_INSERT_LINEBREAK, FN_INSERT_COLUMN_BREAK, FN_INSERT_BREAK_DLG, + FN_INSERT_HARDHYPHEN, FN_INSERT_HARD_SPACE, FN_INSERT_NNBSP, + FN_INSERT_BREAK, FN_INSERT_LINEBREAK, FN_INSERT_COLUMN_BREAK, + FN_INSERT_BREAK_DLG, FN_DELETE_SENT, FN_DELETE_BACK_SENT, FN_DELETE_WORD, FN_DELETE_BACK_WORD, FN_DELETE_LINE, FN_DELETE_BACK_LINE, FN_DELETE_PARA, FN_DELETE_BACK_PARA, FN_DELETE_WHOLE_LINE, diff --git a/sw/uiconfig/swriter/menubar/menubar.xml b/sw/uiconfig/swriter/menubar/menubar.xml index 31cff9be3211..dc03cf7109a1 100644 --- a/sw/uiconfig/swriter/menubar/menubar.xml +++ b/sw/uiconfig/swriter/menubar/menubar.xml @@ -312,6 +312,7 @@ <menu:menuitem menu:id=".uno:InsertNonBreakingSpace"/> <menu:menuitem menu:id=".uno:InsertHardHyphen"/> <menu:menuitem menu:id=".uno:InsertSoftHyphen"/> + <menu:menuitem menu:id=".uno:InsertNarrowNobreakSpace"/> <menu:menuitem menu:id=".uno:InsertZWSP"/> <menu:menuitem menu:id=".uno:InsertZWNBSP"/> <menu:menuitem menu:id=".uno:InsertLRM"/> |