Skip to content

Pr/33#36

Merged
atari2600tim merged 138 commits intodevelopmentfrom
pr/33
Oct 1, 2020
Merged

Pr/33#36
atari2600tim merged 138 commits intodevelopmentfrom
pr/33

Conversation

@atari2600tim
Copy link
Copy Markdown
Owner

Brief overview of PR changes/additions

Motivation for adding to Mudlet

Other info (issues closed, discussion etc)

mudlet-machine-account and others added 30 commits June 6, 2020 11:29
* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Russian)

* New translations mudlet-lua.json (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Pirate English)

* New translations mudlet-lua.json (Portuguese, Brazilian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Portuguese)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Greek)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (German)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (German)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet-lua.json (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Pirate English)

* New translations mudlet-lua.json (Portuguese, Brazilian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Portuguese)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Greek)

* New translations mudlet.ts (Pirate English)

* New translations mudlet-lua.json (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Pirate English)

* New translations mudlet-lua.json (Portuguese, Brazilian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Portuguese)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Greek)

* New translations mudlet.ts (Pirate English)
* deal with empty strings

* Update src/mudlet-lua/lua/Other.lua

Co-authored-by: Kebap <leckerkebap@gmx.li>

Co-authored-by: Kebap <leckerkebap@gmx.li>
Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
I was trying to be too clever and return a reference to an object.
I think I might have been able to extend the life-time of the item
concerned if I had made it a `const` but all in all it is simpler just to
use the normal return action that a compiler can use RVO to avoid making a
unneeded copy of the item.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
* Enhance: make multiView persistent & compact input line act on all profiles

Makes the compact input line a toggle (so now it also has constant text).

Makes the multi-view stay active when `<Ctrl>+<Tab>` / `<Ctrl>+Number`
switching between - or clicking on the tab bars.

Also disables the (now a toggle) control for multi-view when there is less
than two profiles active.

This should close Mudlet#1111 Mudlet#1831 Mudlet#3136 Mudlet#3204 Mudlet#2400, it may also improve Mudlet#2099

It also disables dragging the tabs around so will prevent the issue
mentioned in Mudlet#1456 pending a fix that can also rearrange the main
`TConsole`s to match.

Also improve layout of the Multi-view tool-tip for both the toolbar and
menu instances of the control.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Revoke: remove changes disassociated with the multi-view issues

Required to simplify this PR and so they can be moved to a separate
PR.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Enhance: improve active tab indication in multi-view

Examining the situations in which clicking on a part of the UI does not
cause the indication of the active tab to reflect the profile that the
widget is part of has shown a few places which are addressed in this
commit:
* 2D Mapper
* 3D Mapper
* Search term entry widget in the commandl ine
* either `TTextEdit` in the Main or User Window `TConsole`
* `TLabels` in any `TConsole`

All of the above will now call a new mudlet::activateProfile(Host*) which
will ensure that the correct tab is selected, and that the member:
`(Host*) mudlet::mpCurrentActiveHost` is updated to also reflect that.

Also, if multi-view is active than there is not need to highlight the
tabs of profiles that have seen any changes - which is just as well as the
code to clear the tab is dependent on the user clicking on the affected
tab to show the tab and clear it - which is less likely to happen when in
the multi-view mode.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
…ers (Mudlet#3890)

* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers

As the Travis MacOs CI builds are using the latest libzip which is
currently the one which doesn't have LIBZIP_MAJOR and other version numbers
they were encountering a #error situation and aborting the build.

This is being fixed upstream so 1.70.1 should be okay.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Check for defines of LIBZIP_VERSION_MINOR

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers (Mudlet#3890)

* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers

As the Travis MacOs CI builds are using the latest libzip which is
currently the one which doesn't have LIBZIP_MAJOR and other version numbers
they were encountering a #error situation and aborting the build.

This is being fixed upstream so 1.70.1 should be okay.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Check for defines of LIBZIP_VERSION_MINOR

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
(cherry picked from commit bcbf8a0)

* 4.9.0 release!

* Back to -dev

Co-authored-by: Stephen Lyons <slysven@virginmedia.com>
…3895)

* Adding spairs function for iterating over tables in a sorted fashion. Also adding tests for same

* Minor test change just to force appveyor to start over
* Added getClipboardText and setClipboardText functions to allow scripts to interact with the clipboard.

* A little bit of arranging so this code is matching the style of other Lua functions.

* Added references to the function's pages on the wiki.
This adds a white outline around the otherwise entirely black icons so that
they becomes visible when used with a dark desktop theme.

For the record this icon was created from scratch on a 256x256 transparent
background using The G.I.M.P. to draw "X=" in text in black using the
"Serif" or "Sans serif" font at a size of 150 (for two of the text based ones
the third had to be reduced to fit), that image was then redrawn in white four
times and each of them was offset by +/-4 in complimentary X and Y
directions (and the gaps at the ends filled in and blurred) so that they
expanded the background white around the black foreground.

The reason for expanding from the original 48x48 pixel size was to make the
anti-aliasing take up a much smaller proportion of the image - so it will
appear sharper even at higher resolutions.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
*Total -- 150.01kb -> 128.86kb (14.1%)

/src/icons/variables.png -- 15.69kb -> 7.79kb (50.32%)
/src/icons/table.png -- 1.60kb -> 0.85kb (46.89%)
/src/icons/function.png -- 39.66kb -> 31.92kb (19.53%)
/src/icons/variable.png -- 30.14kb -> 26.13kb (13.31%)
/src/icons/mudlet_ptb_256px.png -- 62.92kb -> 62.16kb (1.2%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
- Bug was caused by index out of range when processing MXP SEND tags with more commands than associated hints
- The solution uses HREF instead of HINT when the number of available hints is one and smaller than the number of commands
* prevent height/width of 0

* better solution still keeps hbox at 0

* small correction
- In TTextEdit code was looking for links and tooltips associated to the main console
* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers (Mudlet#3890)

* Bugfix: prevent build failure with libzip 1.70.0 with no version numbers

As the Travis MacOs CI builds are using the latest libzip which is
currently the one which doesn't have LIBZIP_MAJOR and other version numbers
they were encountering a #error situation and aborting the build.

This is being fixed upstream so 1.70.1 should be okay.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

* Check for defines of LIBZIP_VERSION_MINOR

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
(cherry picked from commit bcbf8a0)

* 4.9.0 release!

* Back to -dev

* Fix crash loading MMP map (Mudlet#3899)

(cherry picked from commit 510c3be)

* Fixes Mudlet#3900, bug on MXP SEND tags (Mudlet#3908)

- Bug was caused by index out of range when processing MXP SEND tags with more commands than associated hints
- The solution uses HREF instead of HINT when the number of available hints is one and smaller than the number of commands

(cherry picked from commit 46320c3)

* Fix for Geyser HBox/VBox with width/height at 0 (Mudlet#3909)

* prevent height/width of 0

* better solution still keeps hbox at 0

* small correction

(cherry picked from commit a7dc3a2)

* Fixes bug Mudlet#3886 with links in miniconsoles (Mudlet#3904)

- In TTextEdit code was looking for links and tooltips associated to the main console

(cherry picked from commit 547c658)

* 4.9.1 bugfix release

* Back to -dev

Co-authored-by: Stephen Lyons <slysven@virginmedia.com>
Co-authored-by: Gustavo Sousa <gustavocms@gmail.com>
Co-authored-by: Manuel Wegmann <60551052+Edru2@users.noreply.github.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
…nd be saved for each profile (Mudlet#3866)

This message is an edited compilation of the individual commits that
made up the eventual squashed and merged PR:

Makes the compact input line a toggle (so now it also has constant text).
The previous code only considered the currently active profile which
was contradicted by the fact that the state - which was maintained
between sessions - was stored centrally as an application setting rather
than a per profile one.

This was split out of a larger PR that originally included it:
Mudlet#3844 .

Because of the poor tracking of `(Host*) mudlet::mCurrentActiveHost`
the use of the short-cut or menu item to toggle the state of the input line
did not fully track which profile is active yet. That was improved when
PR 3844  went in.

BugFix: clicking on a different profile needs to update compact input line

Although clicking on the tab bar changed the currently active host and that
would update the compact input line menu item state to match the newly made
active profile the same thing was not happening if the profile was made
active by being clicked on in other places when in multi-view. This was
only discovered after PR 3844 was applied.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (German)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Simplified)
* Remove Camel Case Requirement from Client.Media

* Remove Camel Case Requirement from Client.Media
* Don't call Lua functions with too many arguments

* Show a warning when trimming
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
This will close Issue: Mudlet#2706.

Also fix a couple of warnings for the `dlgConnectionProfiles` class:
* an out of order initialisation list
* an unused argument in:
 `(void) dlgConnectionProfiles::slot_update_name(const QString&)`

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
github-actions bot and others added 27 commits September 24, 2020 20:05
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
* prevent links to use full console width

prevent links to use full console width by checking if the mouse is out off the right bound

* make isOutOffBound non-optional

* change isOutOffBound to isOutOffbounds

* typo
* add scrollbar to errorconsole

* add horizontal scrollbar to error console

* hide if not needed

* update horizontal scrollbar on redrawing

* selection works even if scrolled to the right

* added suggestions and selecting is visible now

* add suggested code changes

* Update TTextEdit.cpp

* these are obsolte due to the background-image pr

these are not needed anymore and could cause a performance issue

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
Co-authored-by: mudlet-machine-account <mudlet-machine-account@users.noreply.github.com>
* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (German)

* New translations mudlet.ts (German)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (German)

* New translations mudlet.ts (French)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Spanish)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Greek)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (Dutch)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Portuguese)

* New translations mudlet.ts (Turkish)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Portuguese, Brazilian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Pirate English)

* New translations mudlet.ts (Russian)

* New translations mudlet.ts (French)

* New translations mudlet.ts (Chinese Simplified)

* New translations mudlet.ts (Polish)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (German)

* New translations mudlet.ts (German)

* New translations mudlet.ts (Italian)

* New translations mudlet.ts (English, United Kingdom)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet.ts (Chinese Traditional)

* New translations mudlet-lua.json (French)

* New translations mudlet-lua.json (Russian)

* New translations mudlet-lua.json (Chinese Traditional)

* New translations mudlet-lua.json (Chinese Simplified)

* New translations mudlet-lua.json (Turkish)

* New translations mudlet-lua.json (Spanish)

* New translations mudlet-lua.json (Polish)

* New translations mudlet-lua.json (Dutch)

* New translations mudlet-lua.json (Italian)

* New translations mudlet-lua.json (German)

* New translations mudlet-lua.json (Italian)

* New translations mudlet-lua.json (German)

* New translations mudlet.ts (German)

* New translations mudlet-lua.json (English, United Kingdom)

* New translations mudlet-lua.json (Russian)

Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
* Improve codespaces setup

* Added libqt5opengl5-dev

* Forward vnc port 5900 by default

* Install Lua dependencies

* Add script to run Debian UI

* Fix schellcheck warning

* Update Dockerfile with desktop Debian instructions

* Updated devcontainer.json with desktop Debian

* Fix Dockerfile linter
I discovered I had a problem with this when working on something else with
an existing profile. The result was that the toolbar concerned was not
added to the main window. This PR forces a resolution to this by reapplying
the toolbar to the default left DockWidgetArea if no previous one seemed to
be set.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
Mudlet#4030)

When the preference that controlled the E. Asian widening was set to "Auto"
it was not being correctly detected as the wrong `QByteArray` strings were
being checked against the currently selected Game Server encoding setting.
This would mean that both the variants that Mudlet offered would be using
the "Normal"/"Narrow" wide for such ambiguous graphemes rather than the
"Wide" that was intended.

Also, there were some places in the `TLuaInterpreter` class where the
encoding details were being treated as `QString`s rather than the
`QByteArray` that is used specifically to match up with Qt's own usage,
and avoid the whole `QStringLiteral(...)`/`QObject::tr(...)` wrapper issue
that arises from the use of `QString`...

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
…4091)

* pGlobalLua cannot be NULL

* Don't clear the stack

Internal functions should leave the stack as they found it.
Clearing it is not intuitive and in fact causes crashes.

* Clean up MSSP event generation

That loop is obfuscating the code.

* Add a "*" wildcard event subscription.

* Teach the Lua event dispatcher about "*"

This requires registering the Lua dispatcher to "*" instead of every
single event type. Otherwise as soon as somebody wants all events
every dispatcher would be called twice.

* Use a constant string
* use upperPane for page scrolling

* screenheight was private
Co-authored-by: Vadim Peretokin <vperetokin@gmail.com>
* restore old behaviour

restore old behaviour for right click menu and for the
image copy

* add bg color to image copy

bg color was always black in image copy.
Now it's completly the old behaviour
* Try brew update-reset instead of update

* Use brew-update-reset branch

* Back to brew update

* Revert "Back to brew update"

This reverts commit 84e00b6.

* Update travis.osx.after_success.sh

* Update travis.osx.before_install.sh

* Update travis.osx.before_install.sh

* One last time, try brew update-reset
…sion (#35)

Also add indication of bitness in QApplication::ApplicationName for Windows
builds.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>

Co-authored-by: Stephen Lyons <slysven@virginmedia.com>
@atari2600tim atari2600tim merged commit f0f0f18 into development Oct 1, 2020
atari2600tim added a commit that referenced this pull request Oct 1, 2020
This reverts commit f0f0f18.
@atari2600tim atari2600tim deleted the pr/33 branch October 1, 2020 17:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.