Bug 444458

Summary: Tab bar should follow the KDE Human Interface Guidelines
Product: [Applications] okteta Reporter: Nagy Tibor <xnagytibor>
Component: generalAssignee: Friedrich W. H. Kossebau <kossebau>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: 0.26.6   
Target Milestone: ---   
Platform: Neon   
OS: Linux   
Latest Commit: Version Fixed/Implemented In: 0.26.7
Sentry Crash Report:

Description Nagy Tibor 2021-10-26 22:50:21 UTC
SUMMARY
The tab bar in Okteta is unpleasant to use. It could be significantly improved by implementing the following KDE HIG recommendations:

> Make it possible to re-order tabs.
> Provide a context menu on each tab if their pages contain documents. [...]
> Consider providing an 'Add New Tab' button on the right side of the tab bar for tabs that contain documents or other user-editable content. [...]

Modern KDE apps nowadays usually comply with the last 'Add New Tab' recommendation by handling double clicking on the empty space of the tab bar for an adding new tabs. It's the same thing in spirit.

https://develop.kde.org/hig/components/navigation/tab/#tabs-with-pages-containing-documents

SOFTWARE/OS VERSIONS
Operating System: KDE neon 5.23
KDE Plasma Version: 5.23.1
KDE Frameworks Version: 5.87.0
Qt Version: 5.15.3
Graphics Platform: X11
Comment 1 Friedrich W. H. Kossebau 2021-12-29 00:32:00 UTC
Git commit e5660829b5d9c85373139b48b68bc8ffcd7c3c00 by Friedrich W. H. Kossebau.
Committed on 25/11/2021 at 17:52.
Pushed by kossebau into branch '0.26'.

Enable reordering of view tabs inside a single tab area

M  +1    -0    libs/kasten/gui/shell/tabbedviews_p.cpp

https://invent.kde.org/utilities/okteta/commit/e5660829b5d9c85373139b48b68bc8ffcd7c3c00
Comment 2 Friedrich W. H. Kossebau 2021-12-29 00:32:08 UTC
Git commit 382981fad053a6998c73a9af581bd42f549ba5bd by Friedrich W. H. Kossebau.
Committed on 25/11/2021 at 17:52.
Pushed by kossebau into branch '0.26'.

Add a context menu for the view area (incl. tabs)

M  +7    -0    libs/kasten/controllers/CMakeLists.txt
A  +134  -0    libs/kasten/controllers/shellwindow/viewareacontextmenu/viewareacontextmenucontroller.cpp     [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)]
A  +64   -0    libs/kasten/controllers/shellwindow/viewareacontextmenu/viewareacontextmenucontroller.hpp     [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)]
A  +30   -0    libs/kasten/controllers/shellwindow/viewareacontextmenu/viewareacontextmenucontrollerfactory.cpp     [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)]
A  +39   -0    libs/kasten/controllers/shellwindow/viewareacontextmenu/viewareacontextmenucontrollerfactory.hpp     [License: LGPL(3+eV) LGPL(v3.0) LGPL(v2.1)]
M  +1    -0    libs/kasten/gui/shell/multiviewareas.hpp
M  +16   -0    libs/kasten/gui/shell/multiviewareas_p.cpp
M  +1    -0    libs/kasten/gui/shell/multiviewareas_p.hpp
M  +1    -0    libs/kasten/gui/shell/tabbedviews.hpp
M  +20   -0    libs/kasten/gui/shell/tabbedviews_p.cpp
M  +1    -0    libs/kasten/gui/shell/tabbedviews_p.hpp
M  +2    -0    program/mainwindow.cpp
M  +10   -1    program/oktetaui.rc

https://invent.kde.org/utilities/okteta/commit/382981fad053a6998c73a9af581bd42f549ba5bd
Comment 3 Friedrich W. H. Kossebau 2021-12-29 00:32:24 UTC
Git commit 7d4e93109a239e84be31c8cbbf0bfd92dbab6774 by Friedrich W. H. Kossebau.
Committed on 25/11/2021 at 17:52.
Pushed by kossebau into branch '0.26'.

Create empty documents on LMB double-clicks in empty areas
FIXED-IN: 0.26.7

M  +1    -0    libs/kasten/gui/shell/multiviewareas.hpp
M  +2    -0    libs/kasten/gui/shell/multiviewareas_p.cpp
M  +30   -0    libs/kasten/gui/shell/tabbar.cpp
M  +5    -0    libs/kasten/gui/shell/tabbar.hpp
M  +1    -0    libs/kasten/gui/shell/tabbedviews.hpp
M  +9    -0    libs/kasten/gui/shell/tabbedviews_p.cpp
M  +1    -0    libs/kasten/gui/shell/tabbedviews_p.hpp
M  +13   -0    libs/kasten/gui/shell/tabwidget.cpp
M  +2    -0    libs/kasten/gui/shell/tabwidget.hpp
M  +7    -0    program/mainwindow.cpp
M  +1    -0    program/mainwindow.hpp

https://invent.kde.org/utilities/okteta/commit/7d4e93109a239e84be31c8cbbf0bfd92dbab6774