From 4aed2c8219774f5d797760606b8489a92ddc5163 Mon Sep 17 00:00:00 2001 From: toma Date: Wed, 25 Nov 2009 17:56:58 +0000 Subject: Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. BUG:215923 git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1054174 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- konqueror/AUTHORS | 16 + konqueror/ChangeLog | 433 ++ konqueror/DESIGN | 99 + konqueror/DESIGN_config | 43 + konqueror/Home.desktop | 170 + konqueror/IDEAS | 223 + konqueror/KonqMainWindowIface.cc | 175 + konqueror/KonqMainWindowIface.h | 95 + konqueror/KonqViewIface.cc | 141 + konqueror/KonqViewIface.h | 136 + konqueror/KonquerorIface.cc | 295 + konqueror/KonquerorIface.h | 189 + konqueror/Makefile.am | 105 + konqueror/TODO | 49 + konqueror/about/Makefile.am | 17 + konqueror/about/box-centre-konqueror.png | Bin 0 -> 34202 bytes konqueror/about/intro.html | 89 + konqueror/about/konq.css | 21 + konqueror/about/konq_aboutpage.cc | 518 ++ konqueror/about/konq_aboutpage.desktop | 86 + konqueror/about/konq_aboutpage.h | 63 + konqueror/about/konqaboutpage.desktop | 4 + konqueror/about/launch.html | 119 + konqueror/about/lightning.png | Bin 0 -> 203 bytes konqueror/about/plugins.html | 48 + konqueror/about/plugins_rtl.html | 51 + konqueror/about/specs.html | 206 + konqueror/about/tips.html | 126 + konqueror/about/top-right-konqueror.png | Bin 0 -> 16195 bytes konqueror/client/ChangeLog | 14 + konqueror/client/Makefile.am | 23 + konqueror/client/kfmclient.cc | 643 +++ konqueror/client/kfmclient.h | 51 + konqueror/client/kfmclient_3_2.upd | 4 + konqueror/client/kfmclient_3_2_update.sh | 21 + konqueror/convert_kdelnk.sh | 27 + konqueror/delayedinitializer.cc | 55 + konqueror/delayedinitializer.h | 45 + konqueror/iconview/Makefile.am | 17 + konqueror/iconview/konq_iconview.cc | 1539 +++++ konqueror/iconview/konq_iconview.desktop | 92 + konqueror/iconview/konq_iconview.h | 299 + konqueror/iconview/konq_iconview.rc | 51 + konqueror/iconview/konq_multicolumnview.desktop | 92 + konqueror/iconview/konq_multicolumnview.rc | 47 + konqueror/keditbookmarks/DESIGN | 20 + konqueror/keditbookmarks/Makefile.am | 34 + konqueror/keditbookmarks/TODO | 120 + konqueror/keditbookmarks/actionsimpl.cpp | 638 +++ konqueror/keditbookmarks/actionsimpl.h | 83 + konqueror/keditbookmarks/bookmarkinfo.cpp | 293 + konqueror/keditbookmarks/bookmarkinfo.h | 111 + konqueror/keditbookmarks/bookmarkiterator.cpp | 105 + konqueror/keditbookmarks/bookmarkiterator.h | 74 + konqueror/keditbookmarks/commands.cpp | 745 +++ konqueror/keditbookmarks/commands.h | 256 + .../keditbookmarks/cr16-app-keditbookmarks.png | Bin 0 -> 916 bytes .../keditbookmarks/cr32-app-keditbookmarks.png | Bin 0 -> 1636 bytes .../keditbookmarks/cr48-app-keditbookmarks.png | Bin 0 -> 2663 bytes .../keditbookmarks/cr64-app-keditbookmarks.png | Bin 0 -> 5042 bytes konqueror/keditbookmarks/dcop.cpp | 67 + konqueror/keditbookmarks/dcop.h | 36 + konqueror/keditbookmarks/exporters.cpp | 90 + konqueror/keditbookmarks/exporters.h | 39 + konqueror/keditbookmarks/favicons.cpp | 100 + konqueror/keditbookmarks/favicons.h | 69 + konqueror/keditbookmarks/importers.cpp | 293 + konqueror/keditbookmarks/importers.h | 192 + konqueror/keditbookmarks/kbookmarkmerger.cpp | 138 + konqueror/keditbookmarks/kebsearchline.cpp | 82 + konqueror/keditbookmarks/kebsearchline.h | 52 + konqueror/keditbookmarks/keditbookmarks-genui.rc | 146 + konqueror/keditbookmarks/keditbookmarks.kcfg | 42 + konqueror/keditbookmarks/keditbookmarksui.rc | 218 + konqueror/keditbookmarks/kinsertionsort.h | 59 + konqueror/keditbookmarks/listview.cpp | 968 ++++ konqueror/keditbookmarks/listview.h | 217 + konqueror/keditbookmarks/main.cpp | 199 + konqueror/keditbookmarks/settings.kcfgc | 4 + konqueror/keditbookmarks/testlink.cpp | 395 ++ konqueror/keditbookmarks/testlink.h | 75 + konqueror/keditbookmarks/toplevel.cpp | 356 ++ konqueror/keditbookmarks/toplevel.h | 175 + konqueror/keditbookmarks/uninstall.desktop | 2 + konqueror/keditbookmarks/updater.cpp | 180 + konqueror/keditbookmarks/updater.h | 91 + konqueror/kfmclient.desktop | 22 + konqueror/kfmclient_dir.desktop | 20 + konqueror/kfmclient_html.desktop | 21 + konqueror/kfmclient_war.desktop | 21 + konqueror/konq-simplebrowser.rc | 99 + konqueror/konq_actions.cc | 504 ++ konqueror/konq_actions.h | 158 + konqueror/konq_browseriface.cc | 22 + konqueror/konq_browseriface.h | 24 + konqueror/konq_combo.cc | 892 +++ konqueror/konq_combo.h | 115 + konqueror/konq_extensionmanager.cc | 147 + konqueror/konq_extensionmanager.h | 57 + konqueror/konq_factory.cc | 263 + konqueror/konq_factory.h | 86 + konqueror/konq_frame.cc | 670 +++ konqueror/konq_frame.h | 410 ++ konqueror/konq_guiclients.cc | 358 ++ konqueror/konq_guiclients.h | 97 + konqueror/konq_main.cc | 222 + konqueror/konq_main.h | 27 + konqueror/konq_mainwindow.cc | 5907 ++++++++++++++++++++ konqueror/konq_mainwindow.h | 771 +++ konqueror/konq_mainwindow_p.h | 40 + konqueror/konq_misc.cc | 281 + konqueror/konq_misc.h | 135 + konqueror/konq_openurlrequest.h | 64 + konqueror/konq_profiledlg.cc | 266 + konqueror/konq_profiledlg.h | 83 + konqueror/konq_run.cc | 195 + konqueror/konq_run.h | 73 + konqueror/konq_settingsxt.kcfgc | 4 + konqueror/konq_tabs.cc | 539 ++ konqueror/konq_tabs.h | 130 + konqueror/konq_view.cc | 1398 +++++ konqueror/konq_view.h | 479 ++ konqueror/konq_viewmgr.cc | 1831 ++++++ konqueror/konq_viewmgr.h | 367 ++ konqueror/konqbrowser.desktop | 98 + konqueror/konqfilemgr.desktop | 90 + konqueror/konqueror.desktop | 100 + konqueror/konqueror.kcfg | 620 ++ konqueror/konqueror.rc | 152 + konqueror/konquerorsu.desktop | 90 + konqueror/kttsplugin/Makefile.am | 16 + konqueror/kttsplugin/khtmlkttsd.cpp | 138 + konqueror/kttsplugin/khtmlkttsd.desktop | 75 + konqueror/kttsplugin/khtmlkttsd.h | 46 + konqueror/kttsplugin/khtmlkttsd.rc | 13 + konqueror/listview/Makefile.am | 30 + konqueror/listview/konq_detailedlistview.desktop | 89 + konqueror/listview/konq_detailedlistview.rc | 52 + konqueror/listview/konq_infolistview.desktop | 87 + konqueror/listview/konq_infolistview.rc | 39 + konqueror/listview/konq_infolistviewitem.cc | 281 + konqueror/listview/konq_infolistviewitem.h | 79 + konqueror/listview/konq_infolistviewwidget.cc | 383 ++ konqueror/listview/konq_infolistviewwidget.h | 89 + konqueror/listview/konq_listview.cc | 691 +++ konqueror/listview/konq_listview.h | 210 + konqueror/listview/konq_listview.kcfg | 37 + konqueror/listview/konq_listviewitems.cc | 449 ++ konqueror/listview/konq_listviewitems.h | 123 + konqueror/listview/konq_listviewsettings.kcfgc | 4 + konqueror/listview/konq_listviewwidget.cc | 1416 +++++ konqueror/listview/konq_listviewwidget.h | 270 + konqueror/listview/konq_textview.desktop | 90 + konqueror/listview/konq_textview.rc | 35 + konqueror/listview/konq_textviewitem.cc | 232 + konqueror/listview/konq_textviewitem.h | 75 + konqueror/listview/konq_textviewwidget.cc | 223 + konqueror/listview/konq_textviewwidget.h | 54 + konqueror/listview/konq_treeview.desktop | 90 + konqueror/listview/konq_treeview.rc | 52 + konqueror/listview/konq_treeviewitem.cc | 96 + konqueror/listview/konq_treeviewitem.h | 79 + konqueror/listview/konq_treeviewwidget.cc | 307 + konqueror/listview/konq_treeviewwidget.h | 67 + konqueror/pics/Makefile.am | 3 + konqueror/pics/actions/Makefile.am | 3 + konqueror/pics/actions/cr16-action-kde1.png | Bin 0 -> 880 bytes konqueror/pics/actions/cr16-action-kde2.png | Bin 0 -> 867 bytes konqueror/pics/actions/cr16-action-kde3.png | Bin 0 -> 880 bytes konqueror/pics/actions/cr16-action-kde4.png | Bin 0 -> 867 bytes konqueror/pics/actions/cr16-action-kde5.png | Bin 0 -> 880 bytes konqueror/pics/actions/cr16-action-kde6.png | Bin 0 -> 867 bytes konqueror/pics/hi128-app-konqueror.png | Bin 0 -> 19548 bytes konqueror/pics/hi16-app-kfm.png | Bin 0 -> 995 bytes konqueror/pics/hi16-app-konqueror.png | Bin 0 -> 959 bytes konqueror/pics/hi22-app-kfm.png | Bin 0 -> 1411 bytes konqueror/pics/hi22-app-konqueror.png | Bin 0 -> 1663 bytes konqueror/pics/hi32-app-kfm.png | Bin 0 -> 2691 bytes konqueror/pics/hi32-app-konqueror.png | Bin 0 -> 2680 bytes konqueror/pics/hi48-app-kfm.png | Bin 0 -> 4693 bytes konqueror/pics/hi48-app-konqueror.png | Bin 0 -> 5009 bytes konqueror/pics/hi64-app-kfm.png | Bin 0 -> 6521 bytes konqueror/pics/hi64-app-konqueror.png | Bin 0 -> 7776 bytes konqueror/pics/hisc-app-konqueror.svgz | Bin 0 -> 12489 bytes konqueror/pics/indicators/Makefile.am | 4 + konqueror/pics/indicators/indicator_connect.png | Bin 0 -> 496 bytes konqueror/pics/indicators/indicator_empty.png | Bin 0 -> 591 bytes konqueror/pics/indicators/indicator_noconnect.png | Bin 0 -> 233 bytes konqueror/pics/indicators/indicator_viewactive.png | Bin 0 -> 654 bytes konqueror/pics/tiles/Makefile.am | 3 + konqueror/pics/tiles/bluemorning.png | Bin 0 -> 13747 bytes konqueror/pics/tiles/canvas.png | Bin 0 -> 35031 bytes konqueror/pics/tiles/kde4ever.png | Bin 0 -> 15428 bytes konqueror/pics/tiles/kenwimer.png | Bin 0 -> 422 bytes konqueror/pics/tiles/noise.png | Bin 0 -> 44973 bytes konqueror/pics/tiles/paper_flieder.png | Bin 0 -> 60601 bytes konqueror/pics/tiles/redfiber.png | Bin 0 -> 72488 bytes konqueror/preloader/Makefile.am | 21 + konqueror/preloader/configure.in.in | 151 + konqueror/preloader/konqy_preload.desktop | 75 + konqueror/preloader/konqy_preloader.desktop | 146 + konqueror/preloader/preloader.cc | 151 + konqueror/preloader/preloader.h | 58 + konqueror/profile_filemanagement.desktop | 95 + konqueror/profile_filepreview.desktop | 110 + konqueror/profile_kde_devel.desktop | 112 + konqueror/profile_midnightcommander.desktop | 45 + konqueror/profile_simplebrowser.desktop | 79 + konqueror/profile_tabbedbrowsing.desktop | 106 + konqueror/profile_webbrowsing.desktop | 86 + konqueror/quickprint/Makefile.am | 7 + konqueror/quickprint/TODO | 18 + konqueror/quickprint/text-ada-print.desktop | 79 + konqueror/quickprint/text-c++-print.desktop | 79 + konqueror/quickprint/text-c++h-print.desktop | 79 + konqueror/quickprint/text-c-print.desktop | 79 + konqueror/quickprint/text-ch-print.desktop | 79 + konqueror/quickprint/text-css-print.desktop | 79 + konqueror/quickprint/text-diff-print.desktop | 79 + konqueror/quickprint/text-html-print.desktop | 79 + konqueror/quickprint/text-java-print.desktop | 79 + konqueror/quickprint/text-log-print.desktop | 79 + konqueror/quickprint/text-makefile-print.desktop | 79 + konqueror/quickprint/text-pas-print.desktop | 79 + konqueror/quickprint/text-perl-print.desktop | 79 + konqueror/quickprint/text-print.desktop | 79 + konqueror/quickprint/text-python-print.desktop | 79 + konqueror/quickprint/text-tcl-print.desktop | 79 + konqueror/quickprint/text-tex-print.desktop | 79 + konqueror/quickprint/text-xml-print.desktop | 79 + konqueror/quickprint/text-xslt-print.desktop | 79 + konqueror/remoteencodingplugin/Makefile.am | 13 + .../remoteencodingplugin/kremoteencodingplugin.cpp | 266 + .../kremoteencodingplugin.desktop | 135 + .../remoteencodingplugin/kremoteencodingplugin.h | 63 + .../remoteencodingplugin/kremoteencodingplugin.rc | 8 + konqueror/shellcmdplugin/Makefile.am | 14 + konqueror/shellcmdplugin/kshellcmddialog.cpp | 90 + konqueror/shellcmdplugin/kshellcmddialog.h | 48 + konqueror/shellcmdplugin/kshellcmdexecutor.cpp | 156 + konqueror/shellcmdplugin/kshellcmdexecutor.h | 50 + konqueror/shellcmdplugin/kshellcmdplugin.cpp | 90 + konqueror/shellcmdplugin/kshellcmdplugin.desktop | 135 + konqueror/shellcmdplugin/kshellcmdplugin.h | 36 + konqueror/shellcmdplugin/kshellcmdplugin.rc | 8 + konqueror/sidebar/.version | 1 + konqueror/sidebar/Makefile.am | 44 + konqueror/sidebar/konq_sidebartng.desktop | 93 + konqueror/sidebar/konqsidebar.cpp | 127 + konqueror/sidebar/konqsidebar.h | 126 + konqueror/sidebar/konqsidebariface_p.h | 9 + konqueror/sidebar/konqsidebarplugin.cpp | 59 + konqueror/sidebar/konqsidebarplugin.h | 97 + konqueror/sidebar/konqsidebartng.rc | 7 + konqueror/sidebar/konqsidebartng.upd | 12 + konqueror/sidebar/move_konqsidebartng_entries.sh | 18 + konqueror/sidebar/sidebar_widget.cpp | 1310 +++++ konqueror/sidebar/sidebar_widget.h | 225 + konqueror/sidebar/test/Makefile.am | 23 + konqueror/sidebar/test/konqsidebartest.cpp | 26 + konqueror/sidebar/test/konqsidebartest.h | 43 + konqueror/sidebar/test/test.desktop | 68 + konqueror/sidebar/trees/Makefile.am | 17 + .../sidebar/trees/bookmark_module/Makefile.am | 10 + .../trees/bookmark_module/bookmark_item.cpp | 81 + .../sidebar/trees/bookmark_module/bookmark_item.h | 62 + .../trees/bookmark_module/bookmark_module.cpp | 583 ++ .../trees/bookmark_module/bookmark_module.h | 98 + konqueror/sidebar/trees/dirtree_module/Makefile.am | 10 + .../sidebar/trees/dirtree_module/dirtree_item.cpp | 245 + .../sidebar/trees/dirtree_module/dirtree_item.h | 73 + .../trees/dirtree_module/dirtree_module.cpp | 649 +++ .../sidebar/trees/dirtree_module/dirtree_module.h | 82 + konqueror/sidebar/trees/history_module/Makefile.am | 16 + .../sidebar/trees/history_module/history_dlg.ui | 239 + .../sidebar/trees/history_module/history_item.cpp | 246 + .../sidebar/trees/history_module/history_item.h | 111 + .../trees/history_module/history_module.cpp | 369 ++ .../sidebar/trees/history_module/history_module.h | 108 + .../trees/history_module/history_settings.cpp | 111 + .../trees/history_module/history_settings.h | 66 + .../sidebar/trees/history_module/kcmhistory.cpp | 272 + .../trees/history_module/kcmhistory.desktop | 233 + .../sidebar/trees/history_module/kcmhistory.h | 64 + konqueror/sidebar/trees/init/Makefile.am | 16 + konqueror/sidebar/trees/init/README | 6 + konqueror/sidebar/trees/init/bookmarks.desktop | 165 + .../sidebar/trees/init/bookmarks_module.desktop | 166 + .../sidebar/trees/init/dirtree_module.desktop | 82 + konqueror/sidebar/trees/init/history.desktop | 164 + .../sidebar/trees/init/history_module.desktop | 165 + konqueror/sidebar/trees/init/home.desktop | 158 + konqueror/sidebar/trees/init/remote.desktop | 87 + konqueror/sidebar/trees/init/remote/.directory | 84 + konqueror/sidebar/trees/init/remote/Makefile.am | 4 + konqueror/sidebar/trees/init/remote/ftp/.directory | 56 + .../sidebar/trees/init/remote/ftp/Makefile.am | 3 + .../sidebar/trees/init/remote/ftp/kde_ftp.desktop | 88 + konqueror/sidebar/trees/init/remote/web/.directory | 56 + .../sidebar/trees/init/remote/web/Makefile.am | 2 + .../sidebar/trees/init/remote/web/apps_web.desktop | 87 + .../sidebar/trees/init/remote/web/dot_web.desktop | 86 + .../sidebar/trees/init/remote/web/kde_web.desktop | 88 + .../sidebar/trees/init/remote/web/look_web.desktop | 54 + konqueror/sidebar/trees/init/root.desktop | 158 + konqueror/sidebar/trees/init/services.desktop | 85 + konqueror/sidebar/trees/init/services/.directory | 81 + konqueror/sidebar/trees/init/services/Makefile.am | 2 + .../trees/init/services/applications.desktop | 79 + .../sidebar/trees/init/services/audiocd.desktop | 85 + .../sidebar/trees/init/services/media.desktop | 74 + .../trees/init/services/printsystem.desktop | 85 + .../sidebar/trees/init/services/settings.desktop | 81 + konqueror/sidebar/trees/init/system.desktop | 139 + .../sidebar/trees/init/virtualfolderadd.desktop | 81 + konqueror/sidebar/trees/konq_sidebartree.cpp | 1048 ++++ konqueror/sidebar/trees/konq_sidebartree.h | 225 + konqueror/sidebar/trees/konq_sidebartreeitem.cpp | 65 + konqueror/sidebar/trees/konq_sidebartreeitem.h | 116 + konqueror/sidebar/trees/konq_sidebartreemodule.h | 65 + .../sidebar/trees/konq_sidebartreetoplevelitem.cpp | 208 + .../sidebar/trees/konq_sidebartreetoplevelitem.h | 101 + konqueror/sidebar/trees/konqsidebar_tree.cpp | 167 + konqueror/sidebar/trees/konqsidebar_tree.h | 47 + konqueror/sidebar/web_module/Makefile.am | 19 + konqueror/sidebar/web_module/TODO | 6 + konqueror/sidebar/web_module/web_module.cpp | 220 + konqueror/sidebar/web_module/web_module.h | 202 + konqueror/sidebar/web_module/webmodule_add.desktop | 79 + konqueror/sidebar/web_module/websidebar.desktop | 78 + konqueror/sidebar/web_module/websidebar.html | 11 + konqueror/uninstall.desktop | 2 + konqueror/version.h | 3 + 333 files changed, 52414 insertions(+) create mode 100644 konqueror/AUTHORS create mode 100644 konqueror/ChangeLog create mode 100644 konqueror/DESIGN create mode 100644 konqueror/DESIGN_config create mode 100644 konqueror/Home.desktop create mode 100644 konqueror/IDEAS create mode 100644 konqueror/KonqMainWindowIface.cc create mode 100644 konqueror/KonqMainWindowIface.h create mode 100644 konqueror/KonqViewIface.cc create mode 100644 konqueror/KonqViewIface.h create mode 100644 konqueror/KonquerorIface.cc create mode 100644 konqueror/KonquerorIface.h create mode 100644 konqueror/Makefile.am create mode 100644 konqueror/TODO create mode 100644 konqueror/about/Makefile.am create mode 100644 konqueror/about/box-centre-konqueror.png create mode 100644 konqueror/about/intro.html create mode 100644 konqueror/about/konq.css create mode 100644 konqueror/about/konq_aboutpage.cc create mode 100644 konqueror/about/konq_aboutpage.desktop create mode 100644 konqueror/about/konq_aboutpage.h create mode 100644 konqueror/about/konqaboutpage.desktop create mode 100644 konqueror/about/launch.html create mode 100644 konqueror/about/lightning.png create mode 100644 konqueror/about/plugins.html create mode 100644 konqueror/about/plugins_rtl.html create mode 100644 konqueror/about/specs.html create mode 100644 konqueror/about/tips.html create mode 100644 konqueror/about/top-right-konqueror.png create mode 100644 konqueror/client/ChangeLog create mode 100644 konqueror/client/Makefile.am create mode 100644 konqueror/client/kfmclient.cc create mode 100644 konqueror/client/kfmclient.h create mode 100644 konqueror/client/kfmclient_3_2.upd create mode 100644 konqueror/client/kfmclient_3_2_update.sh create mode 100755 konqueror/convert_kdelnk.sh create mode 100644 konqueror/delayedinitializer.cc create mode 100644 konqueror/delayedinitializer.h create mode 100644 konqueror/iconview/Makefile.am create mode 100644 konqueror/iconview/konq_iconview.cc create mode 100644 konqueror/iconview/konq_iconview.desktop create mode 100644 konqueror/iconview/konq_iconview.h create mode 100644 konqueror/iconview/konq_iconview.rc create mode 100644 konqueror/iconview/konq_multicolumnview.desktop create mode 100644 konqueror/iconview/konq_multicolumnview.rc create mode 100644 konqueror/keditbookmarks/DESIGN create mode 100644 konqueror/keditbookmarks/Makefile.am create mode 100644 konqueror/keditbookmarks/TODO create mode 100644 konqueror/keditbookmarks/actionsimpl.cpp create mode 100644 konqueror/keditbookmarks/actionsimpl.h create mode 100644 konqueror/keditbookmarks/bookmarkinfo.cpp create mode 100644 konqueror/keditbookmarks/bookmarkinfo.h create mode 100644 konqueror/keditbookmarks/bookmarkiterator.cpp create mode 100644 konqueror/keditbookmarks/bookmarkiterator.h create mode 100644 konqueror/keditbookmarks/commands.cpp create mode 100644 konqueror/keditbookmarks/commands.h create mode 100644 konqueror/keditbookmarks/cr16-app-keditbookmarks.png create mode 100644 konqueror/keditbookmarks/cr32-app-keditbookmarks.png create mode 100644 konqueror/keditbookmarks/cr48-app-keditbookmarks.png create mode 100644 konqueror/keditbookmarks/cr64-app-keditbookmarks.png create mode 100644 konqueror/keditbookmarks/dcop.cpp create mode 100644 konqueror/keditbookmarks/dcop.h create mode 100644 konqueror/keditbookmarks/exporters.cpp create mode 100644 konqueror/keditbookmarks/exporters.h create mode 100644 konqueror/keditbookmarks/favicons.cpp create mode 100644 konqueror/keditbookmarks/favicons.h create mode 100644 konqueror/keditbookmarks/importers.cpp create mode 100644 konqueror/keditbookmarks/importers.h create mode 100644 konqueror/keditbookmarks/kbookmarkmerger.cpp create mode 100644 konqueror/keditbookmarks/kebsearchline.cpp create mode 100644 konqueror/keditbookmarks/kebsearchline.h create mode 100644 konqueror/keditbookmarks/keditbookmarks-genui.rc create mode 100644 konqueror/keditbookmarks/keditbookmarks.kcfg create mode 100644 konqueror/keditbookmarks/keditbookmarksui.rc create mode 100644 konqueror/keditbookmarks/kinsertionsort.h create mode 100644 konqueror/keditbookmarks/listview.cpp create mode 100644 konqueror/keditbookmarks/listview.h create mode 100644 konqueror/keditbookmarks/main.cpp create mode 100644 konqueror/keditbookmarks/settings.kcfgc create mode 100644 konqueror/keditbookmarks/testlink.cpp create mode 100644 konqueror/keditbookmarks/testlink.h create mode 100644 konqueror/keditbookmarks/toplevel.cpp create mode 100644 konqueror/keditbookmarks/toplevel.h create mode 100644 konqueror/keditbookmarks/uninstall.desktop create mode 100644 konqueror/keditbookmarks/updater.cpp create mode 100644 konqueror/keditbookmarks/updater.h create mode 100644 konqueror/kfmclient.desktop create mode 100644 konqueror/kfmclient_dir.desktop create mode 100644 konqueror/kfmclient_html.desktop create mode 100644 konqueror/kfmclient_war.desktop create mode 100644 konqueror/konq-simplebrowser.rc create mode 100644 konqueror/konq_actions.cc create mode 100644 konqueror/konq_actions.h create mode 100644 konqueror/konq_browseriface.cc create mode 100644 konqueror/konq_browseriface.h create mode 100644 konqueror/konq_combo.cc create mode 100644 konqueror/konq_combo.h create mode 100644 konqueror/konq_extensionmanager.cc create mode 100644 konqueror/konq_extensionmanager.h create mode 100644 konqueror/konq_factory.cc create mode 100644 konqueror/konq_factory.h create mode 100644 konqueror/konq_frame.cc create mode 100644 konqueror/konq_frame.h create mode 100644 konqueror/konq_guiclients.cc create mode 100644 konqueror/konq_guiclients.h create mode 100644 konqueror/konq_main.cc create mode 100644 konqueror/konq_main.h create mode 100644 konqueror/konq_mainwindow.cc create mode 100644 konqueror/konq_mainwindow.h create mode 100644 konqueror/konq_mainwindow_p.h create mode 100644 konqueror/konq_misc.cc create mode 100644 konqueror/konq_misc.h create mode 100644 konqueror/konq_openurlrequest.h create mode 100644 konqueror/konq_profiledlg.cc create mode 100644 konqueror/konq_profiledlg.h create mode 100644 konqueror/konq_run.cc create mode 100644 konqueror/konq_run.h create mode 100644 konqueror/konq_settingsxt.kcfgc create mode 100644 konqueror/konq_tabs.cc create mode 100644 konqueror/konq_tabs.h create mode 100644 konqueror/konq_view.cc create mode 100644 konqueror/konq_view.h create mode 100644 konqueror/konq_viewmgr.cc create mode 100644 konqueror/konq_viewmgr.h create mode 100644 konqueror/konqbrowser.desktop create mode 100644 konqueror/konqfilemgr.desktop create mode 100644 konqueror/konqueror.desktop create mode 100644 konqueror/konqueror.kcfg create mode 100644 konqueror/konqueror.rc create mode 100644 konqueror/konquerorsu.desktop create mode 100644 konqueror/kttsplugin/Makefile.am create mode 100644 konqueror/kttsplugin/khtmlkttsd.cpp create mode 100644 konqueror/kttsplugin/khtmlkttsd.desktop create mode 100644 konqueror/kttsplugin/khtmlkttsd.h create mode 100644 konqueror/kttsplugin/khtmlkttsd.rc create mode 100644 konqueror/listview/Makefile.am create mode 100644 konqueror/listview/konq_detailedlistview.desktop create mode 100644 konqueror/listview/konq_detailedlistview.rc create mode 100644 konqueror/listview/konq_infolistview.desktop create mode 100644 konqueror/listview/konq_infolistview.rc create mode 100644 konqueror/listview/konq_infolistviewitem.cc create mode 100644 konqueror/listview/konq_infolistviewitem.h create mode 100644 konqueror/listview/konq_infolistviewwidget.cc create mode 100644 konqueror/listview/konq_infolistviewwidget.h create mode 100644 konqueror/listview/konq_listview.cc create mode 100644 konqueror/listview/konq_listview.h create mode 100644 konqueror/listview/konq_listview.kcfg create mode 100644 konqueror/listview/konq_listviewitems.cc create mode 100644 konqueror/listview/konq_listviewitems.h create mode 100644 konqueror/listview/konq_listviewsettings.kcfgc create mode 100644 konqueror/listview/konq_listviewwidget.cc create mode 100644 konqueror/listview/konq_listviewwidget.h create mode 100644 konqueror/listview/konq_textview.desktop create mode 100644 konqueror/listview/konq_textview.rc create mode 100644 konqueror/listview/konq_textviewitem.cc create mode 100644 konqueror/listview/konq_textviewitem.h create mode 100644 konqueror/listview/konq_textviewwidget.cc create mode 100644 konqueror/listview/konq_textviewwidget.h create mode 100644 konqueror/listview/konq_treeview.desktop create mode 100644 konqueror/listview/konq_treeview.rc create mode 100644 konqueror/listview/konq_treeviewitem.cc create mode 100644 konqueror/listview/konq_treeviewitem.h create mode 100644 konqueror/listview/konq_treeviewwidget.cc create mode 100644 konqueror/listview/konq_treeviewwidget.h create mode 100644 konqueror/pics/Makefile.am create mode 100644 konqueror/pics/actions/Makefile.am create mode 100644 konqueror/pics/actions/cr16-action-kde1.png create mode 100644 konqueror/pics/actions/cr16-action-kde2.png create mode 100644 konqueror/pics/actions/cr16-action-kde3.png create mode 100644 konqueror/pics/actions/cr16-action-kde4.png create mode 100644 konqueror/pics/actions/cr16-action-kde5.png create mode 100644 konqueror/pics/actions/cr16-action-kde6.png create mode 100644 konqueror/pics/hi128-app-konqueror.png create mode 100644 konqueror/pics/hi16-app-kfm.png create mode 100644 konqueror/pics/hi16-app-konqueror.png create mode 100644 konqueror/pics/hi22-app-kfm.png create mode 100644 konqueror/pics/hi22-app-konqueror.png create mode 100644 konqueror/pics/hi32-app-kfm.png create mode 100644 konqueror/pics/hi32-app-konqueror.png create mode 100644 konqueror/pics/hi48-app-kfm.png create mode 100644 konqueror/pics/hi48-app-konqueror.png create mode 100644 konqueror/pics/hi64-app-kfm.png create mode 100644 konqueror/pics/hi64-app-konqueror.png create mode 100644 konqueror/pics/hisc-app-konqueror.svgz create mode 100644 konqueror/pics/indicators/Makefile.am create mode 100644 konqueror/pics/indicators/indicator_connect.png create mode 100644 konqueror/pics/indicators/indicator_empty.png create mode 100644 konqueror/pics/indicators/indicator_noconnect.png create mode 100644 konqueror/pics/indicators/indicator_viewactive.png create mode 100644 konqueror/pics/tiles/Makefile.am create mode 100644 konqueror/pics/tiles/bluemorning.png create mode 100644 konqueror/pics/tiles/canvas.png create mode 100644 konqueror/pics/tiles/kde4ever.png create mode 100644 konqueror/pics/tiles/kenwimer.png create mode 100644 konqueror/pics/tiles/noise.png create mode 100644 konqueror/pics/tiles/paper_flieder.png create mode 100644 konqueror/pics/tiles/redfiber.png create mode 100644 konqueror/preloader/Makefile.am create mode 100644 konqueror/preloader/configure.in.in create mode 100644 konqueror/preloader/konqy_preload.desktop create mode 100644 konqueror/preloader/konqy_preloader.desktop create mode 100644 konqueror/preloader/preloader.cc create mode 100644 konqueror/preloader/preloader.h create mode 100644 konqueror/profile_filemanagement.desktop create mode 100644 konqueror/profile_filepreview.desktop create mode 100644 konqueror/profile_kde_devel.desktop create mode 100644 konqueror/profile_midnightcommander.desktop create mode 100644 konqueror/profile_simplebrowser.desktop create mode 100644 konqueror/profile_tabbedbrowsing.desktop create mode 100644 konqueror/profile_webbrowsing.desktop create mode 100644 konqueror/quickprint/Makefile.am create mode 100644 konqueror/quickprint/TODO create mode 100644 konqueror/quickprint/text-ada-print.desktop create mode 100644 konqueror/quickprint/text-c++-print.desktop create mode 100644 konqueror/quickprint/text-c++h-print.desktop create mode 100644 konqueror/quickprint/text-c-print.desktop create mode 100644 konqueror/quickprint/text-ch-print.desktop create mode 100644 konqueror/quickprint/text-css-print.desktop create mode 100644 konqueror/quickprint/text-diff-print.desktop create mode 100644 konqueror/quickprint/text-html-print.desktop create mode 100644 konqueror/quickprint/text-java-print.desktop create mode 100644 konqueror/quickprint/text-log-print.desktop create mode 100644 konqueror/quickprint/text-makefile-print.desktop create mode 100644 konqueror/quickprint/text-pas-print.desktop create mode 100644 konqueror/quickprint/text-perl-print.desktop create mode 100644 konqueror/quickprint/text-print.desktop create mode 100644 konqueror/quickprint/text-python-print.desktop create mode 100644 konqueror/quickprint/text-tcl-print.desktop create mode 100644 konqueror/quickprint/text-tex-print.desktop create mode 100644 konqueror/quickprint/text-xml-print.desktop create mode 100644 konqueror/quickprint/text-xslt-print.desktop create mode 100644 konqueror/remoteencodingplugin/Makefile.am create mode 100644 konqueror/remoteencodingplugin/kremoteencodingplugin.cpp create mode 100644 konqueror/remoteencodingplugin/kremoteencodingplugin.desktop create mode 100644 konqueror/remoteencodingplugin/kremoteencodingplugin.h create mode 100644 konqueror/remoteencodingplugin/kremoteencodingplugin.rc create mode 100644 konqueror/shellcmdplugin/Makefile.am create mode 100644 konqueror/shellcmdplugin/kshellcmddialog.cpp create mode 100644 konqueror/shellcmdplugin/kshellcmddialog.h create mode 100644 konqueror/shellcmdplugin/kshellcmdexecutor.cpp create mode 100644 konqueror/shellcmdplugin/kshellcmdexecutor.h create mode 100644 konqueror/shellcmdplugin/kshellcmdplugin.cpp create mode 100644 konqueror/shellcmdplugin/kshellcmdplugin.desktop create mode 100644 konqueror/shellcmdplugin/kshellcmdplugin.h create mode 100644 konqueror/shellcmdplugin/kshellcmdplugin.rc create mode 100644 konqueror/sidebar/.version create mode 100644 konqueror/sidebar/Makefile.am create mode 100644 konqueror/sidebar/konq_sidebartng.desktop create mode 100644 konqueror/sidebar/konqsidebar.cpp create mode 100644 konqueror/sidebar/konqsidebar.h create mode 100644 konqueror/sidebar/konqsidebariface_p.h create mode 100644 konqueror/sidebar/konqsidebarplugin.cpp create mode 100644 konqueror/sidebar/konqsidebarplugin.h create mode 100644 konqueror/sidebar/konqsidebartng.rc create mode 100644 konqueror/sidebar/konqsidebartng.upd create mode 100644 konqueror/sidebar/move_konqsidebartng_entries.sh create mode 100644 konqueror/sidebar/sidebar_widget.cpp create mode 100644 konqueror/sidebar/sidebar_widget.h create mode 100644 konqueror/sidebar/test/Makefile.am create mode 100644 konqueror/sidebar/test/konqsidebartest.cpp create mode 100644 konqueror/sidebar/test/konqsidebartest.h create mode 100644 konqueror/sidebar/test/test.desktop create mode 100644 konqueror/sidebar/trees/Makefile.am create mode 100644 konqueror/sidebar/trees/bookmark_module/Makefile.am create mode 100644 konqueror/sidebar/trees/bookmark_module/bookmark_item.cpp create mode 100644 konqueror/sidebar/trees/bookmark_module/bookmark_item.h create mode 100644 konqueror/sidebar/trees/bookmark_module/bookmark_module.cpp create mode 100644 konqueror/sidebar/trees/bookmark_module/bookmark_module.h create mode 100644 konqueror/sidebar/trees/dirtree_module/Makefile.am create mode 100644 konqueror/sidebar/trees/dirtree_module/dirtree_item.cpp create mode 100644 konqueror/sidebar/trees/dirtree_module/dirtree_item.h create mode 100644 konqueror/sidebar/trees/dirtree_module/dirtree_module.cpp create mode 100644 konqueror/sidebar/trees/dirtree_module/dirtree_module.h create mode 100644 konqueror/sidebar/trees/history_module/Makefile.am create mode 100644 konqueror/sidebar/trees/history_module/history_dlg.ui create mode 100644 konqueror/sidebar/trees/history_module/history_item.cpp create mode 100644 konqueror/sidebar/trees/history_module/history_item.h create mode 100644 konqueror/sidebar/trees/history_module/history_module.cpp create mode 100644 konqueror/sidebar/trees/history_module/history_module.h create mode 100644 konqueror/sidebar/trees/history_module/history_settings.cpp create mode 100644 konqueror/sidebar/trees/history_module/history_settings.h create mode 100644 konqueror/sidebar/trees/history_module/kcmhistory.cpp create mode 100644 konqueror/sidebar/trees/history_module/kcmhistory.desktop create mode 100644 konqueror/sidebar/trees/history_module/kcmhistory.h create mode 100644 konqueror/sidebar/trees/init/Makefile.am create mode 100644 konqueror/sidebar/trees/init/README create mode 100644 konqueror/sidebar/trees/init/bookmarks.desktop create mode 100644 konqueror/sidebar/trees/init/bookmarks_module.desktop create mode 100644 konqueror/sidebar/trees/init/dirtree_module.desktop create mode 100644 konqueror/sidebar/trees/init/history.desktop create mode 100644 konqueror/sidebar/trees/init/history_module.desktop create mode 100644 konqueror/sidebar/trees/init/home.desktop create mode 100644 konqueror/sidebar/trees/init/remote.desktop create mode 100644 konqueror/sidebar/trees/init/remote/.directory create mode 100644 konqueror/sidebar/trees/init/remote/Makefile.am create mode 100644 konqueror/sidebar/trees/init/remote/ftp/.directory create mode 100644 konqueror/sidebar/trees/init/remote/ftp/Makefile.am create mode 100644 konqueror/sidebar/trees/init/remote/ftp/kde_ftp.desktop create mode 100644 konqueror/sidebar/trees/init/remote/web/.directory create mode 100644 konqueror/sidebar/trees/init/remote/web/Makefile.am create mode 100644 konqueror/sidebar/trees/init/remote/web/apps_web.desktop create mode 100644 konqueror/sidebar/trees/init/remote/web/dot_web.desktop create mode 100644 konqueror/sidebar/trees/init/remote/web/kde_web.desktop create mode 100644 konqueror/sidebar/trees/init/remote/web/look_web.desktop create mode 100644 konqueror/sidebar/trees/init/root.desktop create mode 100644 konqueror/sidebar/trees/init/services.desktop create mode 100644 konqueror/sidebar/trees/init/services/.directory create mode 100644 konqueror/sidebar/trees/init/services/Makefile.am create mode 100644 konqueror/sidebar/trees/init/services/applications.desktop create mode 100644 konqueror/sidebar/trees/init/services/audiocd.desktop create mode 100644 konqueror/sidebar/trees/init/services/media.desktop create mode 100644 konqueror/sidebar/trees/init/services/printsystem.desktop create mode 100644 konqueror/sidebar/trees/init/services/settings.desktop create mode 100644 konqueror/sidebar/trees/init/system.desktop create mode 100644 konqueror/sidebar/trees/init/virtualfolderadd.desktop create mode 100644 konqueror/sidebar/trees/konq_sidebartree.cpp create mode 100644 konqueror/sidebar/trees/konq_sidebartree.h create mode 100644 konqueror/sidebar/trees/konq_sidebartreeitem.cpp create mode 100644 konqueror/sidebar/trees/konq_sidebartreeitem.h create mode 100644 konqueror/sidebar/trees/konq_sidebartreemodule.h create mode 100644 konqueror/sidebar/trees/konq_sidebartreetoplevelitem.cpp create mode 100644 konqueror/sidebar/trees/konq_sidebartreetoplevelitem.h create mode 100644 konqueror/sidebar/trees/konqsidebar_tree.cpp create mode 100644 konqueror/sidebar/trees/konqsidebar_tree.h create mode 100644 konqueror/sidebar/web_module/Makefile.am create mode 100644 konqueror/sidebar/web_module/TODO create mode 100644 konqueror/sidebar/web_module/web_module.cpp create mode 100644 konqueror/sidebar/web_module/web_module.h create mode 100644 konqueror/sidebar/web_module/webmodule_add.desktop create mode 100644 konqueror/sidebar/web_module/websidebar.desktop create mode 100644 konqueror/sidebar/web_module/websidebar.html create mode 100644 konqueror/uninstall.desktop create mode 100644 konqueror/version.h (limited to 'konqueror') diff --git a/konqueror/AUTHORS b/konqueror/AUTHORS new file mode 100644 index 000000000..1f3975c45 --- /dev/null +++ b/konqueror/AUTHORS @@ -0,0 +1,16 @@ +Started by Torben Weis +Maintained by David Faure +Current team : + Simon Hausmann + Matthias Welk + Michael Reiher + Alexander Neundorf (List views) + Michael Brade (List Views, I/O lib) + Lars Knoll (HTML rendering engine) + Antti Koivisto (HTML rendering engine) + Waldo Bastian (HTML rendering engine) + Matt Koss (I/O lib) + Stephan Kulow (I/O lib) + Richard Moore (Java applet support) + Dina Rogozin (Java applet support) + diff --git a/konqueror/ChangeLog b/konqueror/ChangeLog new file mode 100644 index 000000000..438da0d69 --- /dev/null +++ b/konqueror/ChangeLog @@ -0,0 +1,433 @@ +2001-05-10 Mark Deneen + + * Implemented header of vertical toggle views, with support for + a caption text and a close-button + +2001-05-05 David Faure + + * konq_mainwindow.cc: Set WDestructiveClose again when going + to fullscreen mode (Qt bug), to prevent Alt+F4 from crashing. + * konq_misc.cc: Only abort full-screen mode for windows on the + current desktop. + +2001-05-01 Simon Hausmann + + * konq_mainwindow.cc : moved the connect and disconnect calls + to/from the highlighting signals of the actioncollections into + two separate methods, for cleanup, and use the qt child deletion + mechanism to delete the bookmark actioncollection + +2001-04-28 Simon Hausmann + + * konq_actions.h (class KonqGoURLAction): new class, derived + from KAction, used for the 'go url' action. when plugging the + action into a toolbar make sure to align the button right. + Otherwise the toolbar layout completely fucks up and QToolBar + starts flickering like mad, when the window width is getting + small than the lenght of the url in the combobox. + + * konq_mainwindow.cc (initActions): use KonqGoURLAction + +2001-04-27 Simon Hausmann + + * konq_mainwindow.cc (goURL): new slot, sending a fake key + event to the lineedit, acting like the user pressing return + (initActions): allocate a "Go" action and connect it to the + new goURL slot + + * konqueror.rc: inserted go action into the locationbar + +2001-04-07 Simon Hausmann + + * konq_mainwindow.cc (slotReload): call m_currentView->lockHistory(), + to fix #23818 + * konq_view.cc/h (reload): removed obsolete method + +2001-03-31 David Faure + + * konq_mainwindow.cc(slotRunFinished): Stop wheel animation when a + konqrun fails and we have no view. + +2001-03-25 Simon Hausmann + + * iconview/konq_iconview.cc (KonqKfmIconView): specify a status text for + some actions. Likewise for some actions in KonqDirPart. Also call + setHighlightingEnabled in the KonqDirPart constructor + + * konq_mainwindow.cc (slotShowMenuBar): call saveMainWindowSettings and + KGlobal::config()->sync() after toggling the visiblity of the menubar, + just like it is done for toolbars. + (slotPartActivated): connect and disconnect to/from the actionStatusText + and clearStatusText signals of the part's actioncollection + +2001-03-02 Simon Hausmann + + * konq_view.cc, konq_browseriface.cc/h: Utilize and implement the newly + added KParts::BrowserInterface + +2001-02-06 Simon Hausmann + + * konq_mainwindow.cc (openBookmarkURL): Patch by + Marco Krohn to call openFilteredURL + instead of openURL. Allows environment variables in bookmarks and + other sugar. + +2001-01-28 Stephan Kulow + + * konq_mainwindow.cc (initActions): Plug the actions into a KAccel to + fix short cuts in full screen mode + +2001-01-16 Simon Hausmann + + * konq_actions.cc (fillHistoryPopup), + libkonq/kbookmarkmenu.cc (fillBookmarkMenu): When a Website has + "&" in the Title, make sure to transform it into "&&" before + inserting it into a QPopupMenu (for history or for bookmarks) , to + avoid QPopupMenu interpreting it as accelerator. + + +2001-01-15 David Faure + + * konq_aboutpage.cc, konq_mainwindow.cc: Support for "about:konqueror". + Credits to Simon for the part, and Torsten for the icons. + +2001-01-14 David Faure + + * konq_viewmgr.cc (loadItem): Use openView instead of view->openURL, + so that "view-follows-view" is also applied on startup. Fixes #17679. + + * konq_mainwindow.cc etc.: Lock to current location doesn't make the + view passive anymore. This allows to e.g. change the view mode. + + * konq_frame.cc: Added Lock / Unlock to view statusbar's popupmenu. + +2001-01-13 David Faure + + * konq_dirpart.cc etc.: Always paste to current directory, even + when an item is selected. + +2001-01-12 David Faure + + * konq_viewmgr.cc (loadViewProfile): Set active part before loading + URL, so that the URL appears in the location bar. + + * konq_mainwindow.cc, konq_dirpart.cc: Store find part into history, + in order to restore it when pressing back. + +2001-01-11 David Faure + + * konq_mainwindow.*, konq_view.*: Store caption in the view, + fixes caption when switching parts or removing one. + +2001-01-11 Carsten Pfeiffer + + * konq_historymgr.*: KonqHistoryManager now implements the new + HistoryProvider (from KParts) + +2001-01-09 Alexander Neundorf + + * konq_mainwindow.*, konq_dirpart.*: Copy (F7) and move (F8) are now + available as soon as some files are selected in a directory view. + A dialog asks for the destination. + +2001-01-08 Simon Hausmann + + * KonquerorIface.cc (openBrowserWindow), + (createNewWindow), + (createNewWindow), + (createBrowserWindowFromProfile), + (createBrowserWindowFromProfile), + (createBrowserWindowFromProfileAndURL), + (createBrowserWindowFromProfileAndURL): changed return type from void + to DCOPRef + +2001-01-07 David Faure + + * konq_mainwindow.*: One KonqRun per view (del the old one in setRun), + only one with no view associated (KonqMainWindow::m_initialKonqRun). + This fixes "clicking on two bookmarks very fast opens both URLs, + splitting the view". + +2000-12-28 Simon Hausmann + + * konq_viewmgr.cc (loadViewProfile): When loading an empty profile + (in particular the webbrowsing one) , activate the clear_location + action. This gives the focus to the location bar -> the user can + type in an url right away when loading the webbrowsing profile + +2000-12-27 Simon Hausmann + + * konq_mainwindow.cc (enableAllActions): for iterating over all actions + don't use the action( int index ) method of KActionCollection but instead + retrieve a QValueList and iterate over that, as the =+(int) + operator of QDictIterator isn't really fast + + ----- KDE 2.1 BETA 1 RELEASE ---- + +2000-12-12 David Faure + + * konq_viewmgr.cc: Fixed saving of profiles containing views + "locked to their current location". The attribute was missing from + the profile. + + * konq_mainwindow.cc: Save and restore the preferred service in for + each toolbar 'viewmode' button. + +2000-12-10 David Faure + + * konq_mainwindow.cc, konq_view.*, browserextension.*: Fixed + the initial state of the common actions (cut,copy,paste etc.). + Had to move all the handling of the action states to browserextension. + +2000-12-10 Simon Hausmann + + * konqview_example.tar.gz: removed outdated example. + + * konq_frame.h, konq_view.{cc,h}, + konq_factory.{cc,h}, konq_mainwindow.{cc,h} : Code cleanups, + added missing const's here and there, removed some old unused + code. + +2000-12-09 Simon Hausmann + + * konq_actions.{cc,h}: Added KonqViewModeAction, a KRadioAction + with an additional delayed popupmenu + + * konq_mainwindow.{cc,h}: Changed the toolbar viewmode buttons to + show the available viewmodes grouped. For directories they are + grouped by iconview and listview. This way one can quickly + switch between the favourite list and iconview while still having + the complete choice of viewmodes via delayed popupmenus + (idea by Torsten and David) + + +2000-12-08 David Faure + + * konq_mainwindow.cc (openURL): Support for about:blank + Fix for severe problems with the activation of the standard actions. + The state of the action is now stored in each KonqView. + +2000-12-08 Malte Starostik + + * libkonq/, iconview/: Preview for HTML files implemented. + +2000-12-08 David Faure and Carsten Pfeiffer + + * dirtree/*: Major rewrite of the directory tree, to make it generic. + It can now handle toplevel items over to specific modules. Current + modules available are the dirtree module (directory listing) and the + history module (for a way to visualize the persistent history). + +2000-12-06 Matthias Elter + + * konq_mainwindow.cc: Turned the Configure submenu into a single dialog. + +2000-12-02 David Faure + + * konq_mainwindow.cc (slotToolFind): "Find Files" now embeds the kfind + part, and the result of the search is connected to the current directory + part. "Close" or opening any other URL closes the 'find' part. + Thanks to Eric Coquelle for the kfind classes, and to jpmartin for + pushing us to do this :) + + * konq_viewmgr.cc: Support for suicidal passive views, more arguments + to splitView and splitWindow. + + * konq_guiclients.cc: Duplicated code removed, uses splitWindow now. + +2000-11-30 David Faure + + * konq_mainwindow.cc: Use current profile in "New Window" to fix #16283. + +2000-11-28 David Faure + + * konq_actions.cc: Accel (Alt+O in English) to give focus to location bar, + shown by the label. + + * konq_profiledlg.cc: Ported to KListView to fix problems with selection. + +2000-11-26 David Faure + + * konq_misc.cc, kfmclient.cc, KonquerorIface.cc: Speed up for URLs opened + from another process using KRun (e.g. kdesktop's Minicli), by passing the + mimetype through to konqueror. + +2000-11-25 David Faure + + * konq_misc.cc: Fixed location bar not showing the URL asap. + + * konq_mainwindow.cc : Icons for the configure submenu. + + * konq_actions.cc : KonqHistoryAction turned into KToolBarPopupAction. + Drag the "Location" label to start a drag with the current URL. + +2000-11-25 Simon Hausmann + + * konq_view.cc (connectPart): Install new url event filter for plain + krops and for browserviews with the enableURLDropHandling property enabled + (eventFilter): New eventfilter which listens for url drop events + +Sat Nov 25 17:38:27 2000 Carsten Pfeiffer + + * konq_mainwindow.cc: Completion handling overhauled. We have + one KonqHistoryManager, which holds a KCompletion object and syncs + the history with the completion. + + * konq_view.cc: + set m_bAborted before calling slotCompleted in slotCanceled() + feed the history manager + + * konq_actions.cc: use KonqHistoryCombo that doesn't mess with the + competion-object, we do our own synchronization now. + + * libkonq/ added konq_history* + +2000-11-22 David Faure + + * konq_listview.cc: Added "Default" Icon Size, which corresponds to + KIcon::Small (but when switching to icon view, it becomes whatever's + configured for the "Desktop" group). + +2000-11-21 David Faure + + * konq_listview.cc: Case Insensitive Sort option, on by default. + + * Views: Major rework of the "delayed mimetypes determination" feature, + to make it available to the list view. This makes the list view + MUCH faster in big directories. + This also showed a bug in the listview background painting -> fixed. + +2000-11-19 David Faure + + * Views: Implemented in-place renaming of items ("Rename" in menus, F2) + +2000-11-17 David Faure + + * konq_profiledlg.cc: Made checkbox states persistent (saved to config) + + * konq_run.cc: Check that when we call KRun from KonqRun, it's not going + to launch another konqueror. + * konq_guiclients.cc: Build toggle-view actions in the actioncollection + of the mainwindow, so that it's possible to assign them a shortcut. + +2000-11-16 David Faure + + * konq_viewmgr.cc: Patch by Keunwoo Lee to + implement dynamic accels for the profile submenu. + +2000-11-15 David Faure + + * konq_drag.cc: Export URLs as text/plain as well. + + * konq_mainwindow.cc: Implemented auto-saving of toolbars (KMainWindow), + removed "Save Settings". + Fixed "clicking on directory in dirtree uses wrong view mode for dirs". + * konq_iconview.cc: Added +/- buttons for changing the icon size. + +2000-11-06 David Faure + + * konq_operations.cc: statURL, calls a slot when it stat'ed + the url and created a kfileitem for it. + Used in doDrop when the destination's kfileitem is unknown. Fixes #14739. + Also, KPropsDlg now does a similar thing when called with a KURL. + +2000-11-05 David Faure + + * konqueror.rc: Moved the "open with" actions to the Location menu, + and added a separator to the action list. + + * konq_view.cc (connectPart): moved call to setSaveViewPropertiesLocally + (used to be in various places in KonqMW) so that the flag is + also correct when switching views. + + * konq_dirpart.cc and directory views: apply background color and pixmap + to the viewport(), and updated konq_iconview to do the same. This fixes + many inconsistencies, and makes resizing a window much faster & smoother. + Note that it has to be the viewport and not the widget, otherwise in the + listview, the box between the scrollbars appears colored/pixmap-ed. + + * konq_mainwindow.cc: action renamed View Properties Saved In Directory + +2000-11-04 David Faure + + * konq_viewmgr.cc: now takes care of enableAllActions. + Show led and active statusbar even in the tree+icon configuration + (the rule is now "more than one view", not "more than one activeable + view"). This should remove some confusion. + + * konq_frame.cc: "Remove View" in RMB on statusbar. + Don't try to activate passive views when clicking statusbar. + Different background color on statusbar for active view. + + * konq_mainwindow.cc: Fixes for "Remove Active View" enabling, + to avoid ending up with a lonely embedded konsole, and some + cleanup of code for enabling other view-related actions. + Introducing updateViewActions for common code between enableAllActions + and slotPartActivated. Fixes a few glitches in action activation. + +2000-10-31 Carsten Pfeiffer + + * libkonq: Implemented "Text preview" functionality + +2000-10-26 David Faure + + * keditbookmarks/*: Finally, a bookmark editor for konqueror. + + * kbookmarkmanager.*: Separated from kbookmark.* after dcopidl dying on + "mutable" :). Implemented DCOP notifications between processes. + Implemented "internal bookmark address". KonqBookmarkManager is no more. + + * kbookmarkbar.*: Update for XML bookmarks, fill in aboutToShow, update + sub-menus upon changed() signal, enabled "Add Bookmark" and "New Folder" + +2000-10-24 David Faure + + * kbookmark*: Reimplemented the bookmarks, they are now saved in XML. + Desktop files are imported if the XML file doesn't exist (it's + immediately saved, so this should happen only once). + +2000-10-22 Simon Hausmann + + * konq_view.{cc,h} : changed part->child( 0, "KParts::BE" ) calls to + use the new childObject method in BrowserExtension + +2000-10-22 David Faure + + * dirtree/konq_dirtree.cc: Fixed support for devices in the directory + tree. It currently requires MountPoint in the device desktop file. + + * listview/konq_textviewwidget.cc: Only the Name column is now + selected, and used as a drop area - like in other listviews. + This requires the fix in KListView to work properly. + +2000-10-21 David Faure + + * Fix for linked views saved in profile, introducing isLoadingProfile(). + +2000-10-20 David Faure + + * konq_misc.cc: Use webbrowsing profile for *.html *.htm as well. + +2000-10-20 Simon Hausmann + + * Duplicate window duplicates the history as well. + +[...... long period of development up to KDE 2.0 ommitted .....] + +1999-03-15 Michael Reiher + + * Implemented an ActiveViewIndicator : KonqFrame + +1999-02-28 Simon Hausmann + + * Rewrite from scratch, with completely new IDL + +1999-02-09 David Faure + + * Source imported in kdebase/konqueror + +1999-01-25 Torben Weis + + * Initial import of kfmIII in corba/kfm + + diff --git a/konqueror/DESIGN b/konqueror/DESIGN new file mode 100644 index 000000000..fb2628aaa --- /dev/null +++ b/konqueror/DESIGN @@ -0,0 +1,99 @@ +Konqueror Design Document + +Author: + David Faure, faure@kde.org + +Last modified: 16 June 2000 + +Overall design of konqueror : +============================= + +The design of konqueror is based on the KParts part/mainwindow mechanism +(basically, konqueror can embed several parts, putting each one inside a view : +icon views, tree views, html views...) + +The main(), including all the startup mechanism is in konq_main.* + +The main window contains several "views", in order to show several URLs +at once, possibly using several modes. Each view is a KonqView. +The KonqView contains the child part, which can be : +- an icon view (KonqIconView) +- a list view / tree view (KonqListView/KonqTreeView) +- an HTML view (KHTMLPart) +- any other ReadOnlyPart with or without Browserextension + +Where to find those classes +=========================== + +konq_run.* : Re-implementation of KRun (see libkio) for konqueror. + Responsible for finding appropriate view<->mimetype bindings. +konq_view.* : KonqView, class used by KonqMainView to handle child views +konq_frame.* : KonqFrame and KonqFrameHeader (handles view-statusbar). +konq_main.* : The main() +konq_mainwindow.* : KonqMainWindow, the main window :) +konq_viewmgr.*: View manager. Handles view creation, activation, splitters etc. +iconview/* : KonqIconView, for icon views +listview/* : KonqTreeView, KonqListView... +dirtree/* : KonqDirTree, the directory tree + +Libs used by konqueror +====================== + +kdecore, kdeui, kfile, khtml, kparts - usual stuff :) +libkio - I/O stuff, mimetypes, services +libkonq - bookmarks, properties dialog, templates ("new") menu, icon view widget + +How konqueror opens URLs +======================== + +KonqMainWindow: + + openFilteredURL or slotOpenURLRequest + | + | + -----openURL---- + | | | + | | | + | KonqRun KRun + | | + | | + openView + | \----- splitView to create a new one +KonqView: | + changeViewMode + | + [switchView if different mode required] + | + openURL [emits openURLEvent (after calling openURL)] +Part: | + | + openURL [emits started, progress info, completed] + ... + + +How history is implemented +========================== + +From the konqueror side: + +* KonqView has a list of history items. Each item contains a URL, +and a QByteArray for the view to store its stuff in the format that suits it best. +It calls saveState() at various points of time (right after starting loading the URL, +when the loading is completed, and right before loading another URL). Reason: +among other things, many views store the x and y offset of their scrollview in there. +It calls restoreState() when restoring a particular item out of the history list. + +From the khtml side: + +* Site with no frames: no problem, it just obeys to saveState/restoreState. + +* Site with frames: +KHTMLPart saves the whole structure (all frames, and their URL) in the +history buffer (saveState/restoreState). +Every time a frame changes its URL, we want a new item in the history. +But when this happens, since it's internal to khtml, konqueror wouldn't know +about it. That's why there is the openURLNotify() signal in browser extension +(see there for extensive docu about it). +When khtml emits it, KonqView creates a new history entry and fills it +(calling saveState). + diff --git a/konqueror/DESIGN_config b/konqueror/DESIGN_config new file mode 100644 index 000000000..d482107fa --- /dev/null +++ b/konqueror/DESIGN_config @@ -0,0 +1,43 @@ +Date: Thu, 1 Apr 1999 11:51:03 +0200 +From: David Faure +To: kfm-devel@kde.org +Subject: How to choose between builtin and external application : proposal + +How to configure between builtin and external viewers ? +I discussed this with a friend, and here is what we come up with : + +* global defaults, set in kcontrol, for each mimetype group: + +text : use builtin viewer (yes/no) [checkbox] +image : use builtin viewer (yes/no) [checkbox] +other : use builtin viewer (yes/no) [checkbox] (i.e. application/*, like dvi, ps...) + +* then, in the properties dialog for every mimetype: +- use default (checkbox as "no change") +- use builtin viewer (checkbox as "on") +- use external application (checkbox as "off") + +(=> saved as X-KDE-AutoEmbed=true/false or no entry) + +This way, one can set choose between builtin and external for all text / +images files, and set individual values too (e.g. an icon-team artist would +set up external for xpm, to edit them, and builtin for jpeg, gif, ... to +simply view them). I would personnally set normal-text and english-text to +builtin (to view READMEs) but c++, h, java, ... to my editor. + +And one that doesn't like embedded viewers (like Martin ;)) can set +defaults to 'no' without having to change all mimetypes (text, c, c++, ...) +but still use libkhtml for HTML pages, by setting 'use builtin' in the +mimetype text/html - this is the way to keep the exact (though +inconsistent) behaviour of 1.1-kfm. + +I suggest that factory defaults (i.e. configuration for first-time users) +would be set to 'yes' for the three groups (-> use builtin) +and would be 'use default' for mimetypes. +This for speed reasons (embedded viewers are really fast) and also to show +the new features ;) +KOffice mimetypes have it set to no, though -> click edits. + +Implemented on 09-04-2000 +David FAURE + diff --git a/konqueror/Home.desktop b/konqueror/Home.desktop new file mode 100644 index 000000000..f128ac748 --- /dev/null +++ b/konqueror/Home.desktop @@ -0,0 +1,170 @@ +[Desktop Entry] +Type=Application +Exec=kfmclient openProfile filemanagement +Icon=folder_home +Terminal=false + +Name=Home +Name[af]=Tuiste +Name[ar]=المنزل +Name[az]=Başlanğıc +Name[be]=Хатняя тэчка +Name[bg]=Домашна директория +Name[bn]=ব্যক্তিগত ফোল্ডার +Name[br]=Er-gêr +Name[bs]=Početak +Name[ca]=Inici +Name[cs]=Můj adresář +Name[csb]=Dodóm +Name[cy]=Cartref +Name[da]=Hjem +Name[de]=Persönlicher Ordner +Name[el]=Προσωπικός φάκελος +Name[eo]=Hejmo +Name[es]=Personal +Name[et]=Kodu +Name[eu]=Etxea +Name[fa]=آغازه +Name[fi]=Koti +Name[fr]=Dossier personnel +Name[fy]=Thús +Name[ga]=Baile +Name[gl]=Persoal +Name[he]=בית +Name[hi]=घर +Name[hr]=Početak +Name[hu]=Saját könyvtár +Name[id]=Rumah +Name[is]=Heimasvæðið þitt +Name[ja]=ホーム +Name[ka]=სახლში +Name[kk]=Мекен +Name[km]=ផ្ទះ +Name[ko]=홈 +Name[lo]=ພື້ນທີ່ສ່ວນຕົວ +Name[lt]=Pradžia +Name[lv]=Mājas +Name[mk]=Дома +Name[mn]=Гэр +Name[ms]=Laman Utama +Name[mt]=Direttorju Personali +Name[nb]=Hjem +Name[nds]=Tohuus +Name[ne]=गृह +Name[nn]=Heim +Name[nso]=Gae +Name[oc]=Inici +Name[pa]=ਘਰ +Name[pl]=Katalog domowy +Name[pt]=Pasta Pessoal +Name[pt_BR]=Pasta do Usuário +Name[ro]=Acasă +Name[ru]=Домой +Name[rw]=Urugo +Name[se]=Ruoktu +Name[sk]=Domov +Name[sl]=Domov +Name[sr]=Домаће +Name[sr@Latn]=Domaće +Name[ss]=Ekhaya +Name[sv]=Hem +Name[ta]=தொடக்கம் +Name[te]=ఇల్లు +Name[tg]=Компютери Ман +Name[th]=พื้นที่ส่วนตัว +Name[tr]=Başlangıç +Name[tt]=Anabit +Name[uk]=Домівка +Name[uz]=Uy +Name[uz@cyrillic]=Уй +Name[ven]=Haya +Name[vi]=Nhà +Name[wa]=Måjhon +Name[xh]=Ikhaya +Name[zh_CN]=主文件夹 +Name[zh_TW]=家目錄 +Name[zu]=Ikhaya + +GenericName=Personal Files +GenericName[af]=Persoonlike Lêers +GenericName[ar]=الملفات الشخصية +GenericName[az]=Şəxsi Fayllar +GenericName[be]=Персанальныя файлы +GenericName[bg]=Лични файлове +GenericName[bn]=ব্যক্তিগত ফাইলসমূহ +GenericName[br]=Restroù deoc'h +GenericName[bs]=Osobne datoteke +GenericName[ca]=Fitxers personals +GenericName[cs]=Osobní soubory +GenericName[csb]=Swòje lopczi +GenericName[cy]=Ffeiliau Personol +GenericName[da]=Personlige filer +GenericName[de]=Eigene Dateien +GenericName[el]=Προσωπικά αρχεία +GenericName[eo]=Personaj dosieroj +GenericName[es]=Archivos personales +GenericName[et]=Isiklikud failid +GenericName[eu]=Fitxategi pertsonalak +GenericName[fa]=پرونده‌های شخصی +GenericName[fi]=Omat tiedostot +GenericName[fr]=Fichiers personnels +GenericName[fy]=Persoanlike map +GenericName[ga]=Comhaid Phearsanta +GenericName[gl]=Ficheiros Persoais +GenericName[he]=קבצים אישיים +GenericName[hi]=निजी फ़ाइलें +GenericName[hr]=Osobne datoteke +GenericName[hu]=Személyes fájlok +GenericName[id]=File Pribadi +GenericName[is]=Skrárnar þínar +GenericName[it]=File personali +GenericName[ja]=個人のファイル +GenericName[ka]=პირადი საქაღალდეები +GenericName[kk]=Дербес файлдар +GenericName[km]=ឯកសារ​ផ្ទាល់​ខ្លួន +GenericName[ko]=개인적인 파일 +GenericName[lo]=ທີ່ເກັບແຟ້ມແລະເອກະສານສວ່ນຕົວຫລືອື່ນຯ +GenericName[lt]=Asmeninės bylos +GenericName[lv]=Personālie Faili +GenericName[mk]=Лични датотеки +GenericName[mn]=Өөрийн файлууд +GenericName[ms]=Fail Peribadi +GenericName[mt]=Fajls Personali +GenericName[nb]=Personlige filer +GenericName[nds]=De egen Dateien +GenericName[ne]=व्यक्तिगत फाइल +GenericName[nl]=Persoonlijke map +GenericName[nn]=Personlege filer +GenericName[nso]=Difaele tsa Botho +GenericName[oc]=FiquièRs personals +GenericName[pa]=ਨਿੱਜੀ ਫਾਇਲ਼ਾਂ +GenericName[pl]=Pliki osobiste +GenericName[pt]=Ficheiros Pessoais +GenericName[pt_BR]=Arquivos Pessoais +GenericName[ro]=Fișiere personale +GenericName[ru]=Личные файлы +GenericName[rw]=Amadosiye Yihariye +GenericName[se]=Iežat fiillat +GenericName[sk]=Osobné súbory +GenericName[sl]=Osebne datoteke +GenericName[sr]=Лични фајлови +GenericName[sr@Latn]=Lični fajlovi +GenericName[sv]=Personliga filer +GenericName[ta]=சொந்த கோப்புகள் +GenericName[te]=వ్యక్తిగత దస్త్రాలు +GenericName[tg]=Файлҳои шахсӣ +GenericName[th]=แฟ้มส่วนตัว +GenericName[tr]=Kişisel Dosyalar +GenericName[tt]=Şäxsi Biremnär +GenericName[uk]=Особисті файли +GenericName[uz]=Shaxsiy fayllar +GenericName[uz@cyrillic]=Шахсий файллар +GenericName[ven]=Dzifaela dza vhune +GenericName[vi]=Tập tin Cá nhân +GenericName[wa]=Fitchîs da vosse +GenericName[xh]=Iifayile Zobuqu +GenericName[zh_CN]=个人文件 +GenericName[zh_TW]=個人檔案 +GenericName[zu]=Amafayela Omuntu siqu +Categories=Qt;KDE;Core; +OnlyShowIn=KDE; diff --git a/konqueror/IDEAS b/konqueror/IDEAS new file mode 100644 index 000000000..426b4d006 --- /dev/null +++ b/konqueror/IDEAS @@ -0,0 +1,223 @@ +Konqueror "Ideas" Document (specification, general ideas) + +Authors: + Waldo Bastian + David Faure + Simon Hausmann + +Last modified: 7 Mar 1999 + +Intro +===== +I am trying to create a picture of how Konqueror should look +like in KDE 2.0. If such a picture is clear, it is easier to +build Konqueror such that it will feel like a consistent piece +of software. This is of course only my view of the things. If +someone has other views please let this know. It will help if +a sort of common idea about the future of Konqueror exists. + +KDE 2.0 +======= +I think we should keep Konqueror a "browser": You can browse +with it, and look at things. But when you want to _DO_ things, +you will need a full-fledged application. + +So you can view HTML with it. +You can view directories with it. +You can view text-files with it (read-only). (basically kless) +You can view images with it. +You can view mail-folders with it. +You can view newsgroups with it. +You can view xxx.... + +When you want more advanced manipulating options, modify things, +or create things (writing a mail for instance) the "Real (tm)" +application should pop up with its own menubars etc. + +There is of course a thin line between viewing and modifying. +With the file browser you want to be able to move/rename/delete +files. So if we allow this functionality for file-browsing, we +should also allow it for mail-browsing or news-browsing. +(e.g. move/delete message cq. postings). + +Creating does not really belong in a browser (apart from +directories) because you will almost always need an application +for this anyway. I seldom go to a directory to select "create xyz". +Most of the time you start an application to create "xyz" and +when you are done, you think of a nice place to store it. +(I think Microsoft wants us to believe otherwise, with their +"document-orientated" Windows95 marketing) +((Well, sometimes you are browsing and have a sudden urge to put +a text-file like README in a directory. But for that you still +need a text-editor. Just creating an empty file is of little use.)) + +Why is this important? +====================== +There must be a clear distinction between what can be done with +Konqueror and what can be done with the application self. If there +is no distinction we don't need Konqueror. + +Smooth integration +================== +With this Konqueror thing we have to tell the user a thing or +two. We have to tell the user what he/she is doing: +"Viewing a text-file", "Viewing a web-page", "Viewing a FTP-site", +"Viewing e-mail". Because the options available to the user, depend +on what he is doing: You can reply to e-mail. But you can't reply +to a FTP-site. You can sort the entries of a FTP directory, but +you can't sort a web-page. + +At the same time, we have to tell the user that he/she is "Viewing". +If you want to edit the web-page, the web-editor comes up. If you +want to reply to the e-mail, the mail-composer comes up. At that +time the user is editing/changing/modyfying. + +From the users point of view, the "viewing" part is konqueror. The +editing part is the application. + +From the developers point of view, this can be different. The view +e-mail mode of Konqueror could (but it doesn't have to) be handled +by the same instance of kmail as the "edit" mode of kmail. If this +will be indeed the case should depend on programming considerations. + +What should not depend on programming considerations, is how it is +presented to the user. + +An Example +========== +Teodor Romeo Mihai wrote: +> Well, I've been working for a few months now on a Outloook-clone for +> KDE, handling mail/contacts/schedule/journal/notes/groups. It is a bit +> different from all KDE applications I've seen, being very close to +> Outlook in look&feel rather than KMail - which I find unusable. +> If you are seriously planning to put mail in kfm, maybe you should +> consider some kind of integration with an external mailer, in +> Explorer/Outlook style. + +I'm serious about integrating mail-viewing in Konqueror. +(From a user point of view). + +I think it is a very bad idea to put mail-reading code in +Konqueror. (From a developers point of view). + +Konqueror should be able to display mail/mailboxes by embedding +a mail-viewer. This mail-viewer should (in the case of a mail-viewer) +be a seperate application from a developers point of view, but should +integrate seemless with Konqueror from the user point of view. This +application can be kmail, a light version of kmail, or any other +application that can display mails and supports this embedded KFM-view +idea. + +For viewing HTML or GIF files, Konqueror will most likely implement +the functionality itself. For the user it should not make any difference +if a view is implemented in Konqueror itself or in a seperate +application. + +The technology to embed the mail-viewer should be something CORBA based. +Most likely KOM/Openparts. + +Konqueror should not become a program like Netscape Communicator: +A program that tries to do everything itself, and as result, does +everything very poorly. + +Konqueror should do it better and the Unix way: Have speciliazed +components which are very good in their task. Konqueror provides +the seemless integration of them and provides easy navigation +abilities. + + + This means i can create an application (container) which host two parts, +which are both ACTIVE, that + means i do not need to click the parts before they start repsonding. + + +Konqueror Views +=============== +When an embedded part gets the focus (e.g. when the users clicks on it) +the mainwindow (shell) gets notified about this (the focus change). +You can "manually" activate a part by calling a method in the mainwindow +interface. There can be only part that has the focus. +If you click on a non-activated part the click action itself is not "eaten up" +An activated part means the part has focus (keyboard, ...) +When you have "plain" parts they usually "have" their own GUI which get's +"enabled" (created dynamically) when the part gets the focus +Normally this would bring a big problem inside konqueror +Because then we'd have lots of duplicated *bar creation code and +stuff like this. That is the reason why in konqueror functionality is +implemented in openparts to have so called child parts. +A child part does _not_ have it's own GUI (as a normal openpart has) +instead the part part's gui is used. +We still allow konqueror views to have their own view specific gui elements +When a konqueror view (=part child) gets the focus the part parent +(the mainwindow) will receive an event (eventChildGotFocus) +and this helps the mainwindow to send yet another event to the just +activated view (=part) , an konqueror specific event +these events are described in konqueror.idl + +The result is: +A konqueror view (that's important, the view must support this interface) +can now specify it's own, view specific, menu entries in the edit/view menu +plus it's own toolbar. + +This integration is in fact not sooo seamless because: +whenever the use activates your khelpcenter part +a complete GUI "switch" will take place, meaning all the *bars from +konqueror will be replaced by the *bars from the child view + +Therefor another approach is developed: +The *bars of konqueror will contain entries for all child-views which are +inside the main-view. + +Care should be taken when multiple views want to add the same entries to +one of the *bars. + +In the case of a toolbar, only one entry could be added, the child-view which +has supplied this entry will be made active when his entry is used and will +get the event. If multiple child-views have provided this entry, the currently +active child will get the event. + +For the menubar, the entries will be presented grouped per child-view. The same +entry could be listed twice in the same menu, but listed under two differents +views. + +Transcript +========== + we have a usual mainwindow (looks/behaves quite like a current kfm window on the screen) + now we have two views inside, on the left we've got an iconview + and on the right we've got an htmlview + now let's say the iconview wants to add a special entry in the common view menu + no, let's say three entries: mini-/medium-/large icons + and for the htmlview we've got (in the view menu as well): + whatevery...hm...*thinking*, perhaps charset-selection of stuff like this + now when the iconview is active the view menu will contain + all the usual konqueror (mainwindow) entries (what could this be for example?) plus the three iconview + entries + and when the users activates the htmlview then view menu will silently change + I think it makes sense to have both sets of entries in the view-menu at the sma time + ok, well, it's possible to do this +* tfischer thinks zogje is right. + there's no change in the design necessary + because the user just has a html-view and an inco-view on his screen, and has no idea which one is + "active" + hm, you're right + ok, but I think we can easily solve this: + first we create the common konqueror menu entries + then insertSeparator( -1 ); + ack + and then the first views' entries + then another separator, ...and so on + yes + that seems quite good + we might do something like this: + common konqy entries + separator + dummy-not-doing-anything-entry named viewName() + separator + view entries + yet another separator + second view's name as dummy entries + and so on + yes.. because if we have two html-views... you want to be able to select things for both independntly + + + diff --git a/konqueror/KonqMainWindowIface.cc b/konqueror/KonqMainWindowIface.cc new file mode 100644 index 000000000..00233d883 --- /dev/null +++ b/konqueror/KonqMainWindowIface.cc @@ -0,0 +1,175 @@ +/* This file is part of the KDE project + Copyright (C) 2000 Simon Hausmann + Copyright (C) 2000 David Faure + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "KonqMainWindowIface.h" +#include "KonqViewIface.h" +#include "konq_view.h" + + +#include +#include +#include +#include +#include +#include +#include + +KonqMainWindowIface::KonqMainWindowIface( KonqMainWindow * mainWindow ) + : + // ARGL I hate this "virtual public DCOPObject" stuff! + DCOPObject( mainWindow->name() ), + KMainWindowInterface( mainWindow ), m_pMainWindow( mainWindow ) +{ + m_dcopActionProxy = new KDCOPActionProxy( mainWindow->actionCollection(), this ); +} + +KonqMainWindowIface::~KonqMainWindowIface() +{ + delete m_dcopActionProxy; +} + +void KonqMainWindowIface::openURL( QString url ) +{ + m_pMainWindow->openFilteredURL( url ); +} + +void KonqMainWindowIface::newTab( QString url ) +{ + m_pMainWindow->openFilteredURL( url, true ); +} + +void KonqMainWindowIface::openURL( QString url, bool tempFile ) +{ + m_pMainWindow->openFilteredURL( url, false, tempFile ); +} + +void KonqMainWindowIface::newTab( QString url, bool tempFile ) +{ + m_pMainWindow->openFilteredURL( url, true, tempFile ); +} + +void KonqMainWindowIface::newTabASN( QString url, const QCString& startup_id, bool tempFile ) +{ + KStartupInfo::setNewStartupId( m_pMainWindow, startup_id ); + m_pMainWindow->openFilteredURL( url, true, tempFile ); +} + + +void KonqMainWindowIface::splitViewHorizontally() +{ + m_pMainWindow->slotSplitViewHorizontal(); +} + +void KonqMainWindowIface::splitViewVertically() +{ + m_pMainWindow->slotSplitViewVertical(); +} + +void KonqMainWindowIface::reload() +{ + m_pMainWindow->slotReload(); +} + +DCOPRef KonqMainWindowIface::currentView() +{ + KonqView *view = m_pMainWindow->currentView(); + if ( !view ) + return DCOPRef(); + + return DCOPRef( kapp->dcopClient()->appId(), view->dcopObject()->objId() ); +} + +DCOPRef KonqMainWindowIface::currentPart() +{ + DCOPRef res; + + KonqView *view = m_pMainWindow->currentView(); + if ( !view ) + return res; + + return view->dcopObject()->part(); +} + +DCOPRef KonqMainWindowIface::view(int viewNumber) +{ + KonqMainWindow::MapViews viewMap = m_pMainWindow->viewMap(); + KonqMainWindow::MapViews::const_iterator it = viewMap.begin(); + for ( int i = 0; it != viewMap.end() && i < viewNumber; ++i ) + ++it; + if ( it == viewMap.end() ) + return DCOPRef(); + return DCOPRef( kapp->dcopClient()->appId(), (*it)->dcopObject()->objId() ); +} + +DCOPRef KonqMainWindowIface::part(int viewNumber) +{ + KonqMainWindow::MapViews viewMap = m_pMainWindow->viewMap(); + KonqMainWindow::MapViews::const_iterator it = viewMap.begin(); + for ( int i = 0; it != viewMap.end() && i < viewNumber; ++i ) + ++it; + if ( it == viewMap.end() ) + return DCOPRef(); + return (*it)->dcopObject()->part(); +} + +DCOPRef KonqMainWindowIface::action( const QCString &name ) +{ + return DCOPRef( kapp->dcopClient()->appId(), m_dcopActionProxy->actionObjectId( name ) ); +} + +QCStringList KonqMainWindowIface::actions() +{ + QCStringList res; + QValueList lst = m_dcopActionProxy->actions(); + QValueList::ConstIterator it = lst.begin(); + QValueList::ConstIterator end = lst.end(); + for (; it != end; ++it ) + res.append( (*it)->name() ); + + return res; +} + +QMap KonqMainWindowIface::actionMap() +{ + return m_dcopActionProxy->actionMap(); +} + +QCStringList KonqMainWindowIface::functionsDynamic() +{ + return DCOPObject::functionsDynamic() + KDCOPPropertyProxy::functions( m_pMainWindow ); +} + +bool KonqMainWindowIface::processDynamic( const QCString &fun, const QByteArray &data, QCString &replyType, QByteArray &replyData ) +{ + if ( KDCOPPropertyProxy::isPropertyRequest( fun, m_pMainWindow ) ) + return KDCOPPropertyProxy::processPropertyRequest( fun, data, replyType, replyData, m_pMainWindow ); + + return DCOPObject::processDynamic( fun, data, replyType, replyData ); +} + +bool KonqMainWindowIface::windowCanBeUsedForTab() +{ + KWin::WindowInfo winfo = KWin::windowInfo( m_pMainWindow->winId(), NET::WMDesktop ); + if( !winfo.isOnCurrentDesktop() ) + return false; // this window shows on different desktop + if( KonqMainWindow::isPreloaded() ) + return false; // we want a tab in an already shown window + return true; +} diff --git a/konqueror/KonqMainWindowIface.h b/konqueror/KonqMainWindowIface.h new file mode 100644 index 000000000..334307cb0 --- /dev/null +++ b/konqueror/KonqMainWindowIface.h @@ -0,0 +1,95 @@ +/* This file is part of the KDE project + Copyright (C) 2000 Simon Hausmann + Copyright (C) 2000 David Faure + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef __KonqMainWindowIface_h__ +#define __KonqMainWindowIface_h__ + +#include +#include +#include +#include + +class KonqMainWindow; +class KDCOPActionProxy; + +/** + * DCOP interface for a konqueror main window + */ +class KonqMainWindowIface : public KMainWindowInterface +{ + K_DCOP +public: + + KonqMainWindowIface( KonqMainWindow * mainWindow ); + ~KonqMainWindowIface(); + +k_dcop: + + void openURL( QString url ); + void newTab( QString url ); + + void openURL( QString url, bool tempFile ); + void newTab( QString url, bool tempFile ); + + void newTabASN( QString url, const QCString& startup_id, bool tempFile ); + + void splitViewHorizontally(); + void splitViewVertically(); + + /** + * Reloads the current view. + */ + void reload(); + + /** + * @return reference to the current KonqView + */ + DCOPRef currentView(); + /** + * @return reference to the current part + */ + DCOPRef currentPart(); + + // viewCount is already exposed via the KonqMainWindow property + DCOPRef view(int viewNumber); + DCOPRef part(int partNumber); + + DCOPRef action( const QCString &name ); + QCStringList actions(); + QMap actionMap(); + + /** + * Used by kfmclient when searching a window to open a tab within + */ + bool windowCanBeUsedForTab(); + +public: + virtual QCStringList functionsDynamic(); + virtual bool processDynamic( const QCString &fun, const QByteArray &data, QCString &replyType, QByteArray &replyData ); + +private: + + KonqMainWindow * m_pMainWindow; + KDCOPActionProxy *m_dcopActionProxy; + +}; + +#endif + diff --git a/konqueror/KonqViewIface.cc b/konqueror/KonqViewIface.cc new file mode 100644 index 000000000..0aeffda1a --- /dev/null +++ b/konqueror/KonqViewIface.cc @@ -0,0 +1,141 @@ +/* This file is part of the KDE project + Copyright (C) 2000 Simon Hausmann + Copyright (C) 2000 David Faure + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "KonqViewIface.h" +#include "konq_view.h" + +#include +#include +#include + +KonqViewIface::KonqViewIface( KonqView * view, const QCString& name ) + : DCOPObject( name ), m_pView ( view ) +{ +} + +KonqViewIface::~KonqViewIface() +{ +} + +void KonqViewIface::openURL( QString url, const QString & locationBarURL, const QString & nameFilter ) +{ + KURL u(url); + m_pView->openURL( u, locationBarURL, nameFilter ); +} + +bool KonqViewIface::changeViewMode( const QString &serviceType, + const QString &serviceName ) +{ + return m_pView->changeViewMode( serviceType, serviceName ); +} + +void KonqViewIface::lockHistory() + +{ + m_pView->lockHistory(); +} + +void KonqViewIface::stop() +{ + m_pView->stop(); +} + +QString KonqViewIface::url() +{ + return m_pView->url().url(); +} + +QString KonqViewIface::locationBarURL() +{ + return m_pView->locationBarURL(); +} + +QString KonqViewIface::serviceType() +{ + return m_pView->serviceType(); +} + +QStringList KonqViewIface::serviceTypes() +{ + return m_pView->serviceTypes(); +} + +DCOPRef KonqViewIface::part() +{ + DCOPRef res; + + KParts::ReadOnlyPart *part = m_pView->part(); + + if ( !part ) + return res; + + QVariant dcopProperty = part->property( "dcopObjectId" ); + + if ( dcopProperty.type() != QVariant::CString ) + return res; + + res.setRef( kapp->dcopClient()->appId(), dcopProperty.toCString() ); + return res; +} + +void KonqViewIface::enablePopupMenu( bool b ) +{ + m_pView->enablePopupMenu( b ); +} + +uint KonqViewIface::historyLength()const +{ + return m_pView->historyLength(); +} + +bool KonqViewIface::allowHTML() const +{ + return m_pView->allowHTML(); +} + +void KonqViewIface::goForward() +{ + m_pView->go(-1); +} + +void KonqViewIface::goBack() +{ + m_pView->go(+1); +} + +bool KonqViewIface::isPopupMenuEnabled() const +{ + return m_pView->isPopupMenuEnabled(); +} + +bool KonqViewIface::canGoBack()const +{ + return m_pView->canGoBack(); +} + +bool KonqViewIface::canGoForward()const +{ + return m_pView->canGoForward(); +} + +void KonqViewIface::reload() +{ + return m_pView->mainWindow()->slotReload( m_pView ); +} diff --git a/konqueror/KonqViewIface.h b/konqueror/KonqViewIface.h new file mode 100644 index 000000000..43630f7f5 --- /dev/null +++ b/konqueror/KonqViewIface.h @@ -0,0 +1,136 @@ +/* This file is part of the KDE project + Copyright (C) 2000 Simon Hausmann + Copyright (C) 2000 David Faure + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef __KonqViewIface_h__ +#define __KonqViewIface_h__ + +#include +#include +#include + +class KonqView; + +/** + * DCOP interface for a konqueror main window + */ +class KonqViewIface : virtual public DCOPObject +{ + K_DCOP +public: + + KonqViewIface( KonqView * view, const QCString& name ); + ~KonqViewIface(); + +k_dcop: + + /** + * Displays another URL, but without changing the view mode + * (Make sure the part can display this URL) + */ + void openURL( QString url, + const QString & locationBarURL, + const QString & nameFilter ); + + /** Reload */ + void reload(); + + /** + * Change the type of view (i.e. loads a new konqueror view) + * @param serviceType the service type we want to show + * @param serviceName allows to enforce a particular service to be chosen, + * @see KonqFactory. + */ + bool changeViewMode( const QString &serviceType, + const QString &serviceName ); + + /** + * Call this to prevent next openURL() call from changing history lists + * Used when the same URL is reloaded (for instance with another view mode) + */ + void lockHistory(); + + /** + * Stop loading + */ + void stop(); + + /** + * Retrieve view's URL + */ + QString url(); + + /** + * Get view's location bar URL, i.e. the one that the view signals + * It can be different from url(), for instance if we display a index.html + */ + QString locationBarURL(); + + /** + * @return the servicetype this view is currently displaying + */ + QString serviceType(); + + /** + * @return the servicetypes this view is capable to display + */ + QStringList serviceTypes(); + + /** + * @return the part embedded into this view + */ + DCOPRef part(); + + /** + * Enable/Disable the context popup menu for this view. + */ + void enablePopupMenu( bool b ); + + + bool isPopupMenuEnabled() const; + + /* + * Return length of history + */ + uint historyLength()const; + /* + * Return true if "Use index HTML" is checked + */ + bool allowHTML() const; + + /* + * Move forward in history "-1" + */ + void goForward(); + /* + * Move back in history "+1" + */ + void goBack(); + + bool canGoBack()const; + bool canGoForward()const; + +private: + + KonqView * m_pView; + +}; + +#endif + diff --git a/konqueror/KonquerorIface.cc b/konqueror/KonquerorIface.cc new file mode 100644 index 000000000..3656512f7 --- /dev/null +++ b/konqueror/KonquerorIface.cc @@ -0,0 +1,295 @@ +/* This file is part of the KDE project + Copyright (C) 1998, 1999 Simon Hausmann + Copyright (C) 2000 David Faure + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#include "KonquerorIface.h" +#include "konq_misc.h" +#include "KonqMainWindowIface.h" +#include "konq_mainwindow.h" +#include "konq_viewmgr.h" +#include "konq_view.h" +#include +#include +#include +#include +#include +#include "konq_settingsxt.h" + +// these DCOP calls come from outside, so any windows created by these +// calls would have old user timestamps (for KWin's no-focus-stealing), +// it's better to reset the timestamp and rely on other means +// of detecting the time when the user action that triggered all this +// happened +// TODO a valid timestamp should be passed in the DCOP calls that +// are not for user scripting +#include +extern Time qt_x_user_time; + +KonquerorIface::KonquerorIface() + : DCOPObject( "KonquerorIface" ) +{ +} + +KonquerorIface::~KonquerorIface() +{ +} + +DCOPRef KonquerorIface::openBrowserWindow( const QString &url ) +{ + qt_x_user_time = 0; + KonqMainWindow *res = KonqMisc::createSimpleWindow( KURL(url) ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::openBrowserWindowASN( const QString &url, const QCString& startup_id ) +{ + kapp->setStartupId( startup_id ); + return openBrowserWindow( url ); +} + +DCOPRef KonquerorIface::createNewWindow( const QString &url ) +{ + return createNewWindow( url, QString::null, false ); +} + +DCOPRef KonquerorIface::createNewWindowASN( const QString &url, const QCString& startup_id, bool tempFile ) +{ + kapp->setStartupId( startup_id ); + return createNewWindow( url, QString::null, tempFile ); +} + +DCOPRef KonquerorIface::createNewWindowWithSelection( const QString &url, QStringList filesToSelect ) +{ + qt_x_user_time = 0; + KonqMainWindow *res = KonqMisc::createNewWindow( KURL(url), KParts::URLArgs(), false, filesToSelect ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::createNewWindowWithSelectionASN( const QString &url, QStringList filesToSelect, const QCString &startup_id ) +{ + kapp->setStartupId( startup_id ); + return createNewWindowWithSelection( url, filesToSelect ); +} + +DCOPRef KonquerorIface::createNewWindow( const QString &url, const QString &mimetype, bool tempFile ) +{ + qt_x_user_time = 0; + KParts::URLArgs args; + args.serviceType = mimetype; + // Filter the URL, so that "kfmclient openURL gg:foo" works also when konq is already running + KURL finalURL = KonqMisc::konqFilteredURL( 0, url ); + KonqMainWindow *res = KonqMisc::createNewWindow( finalURL, args, false, QStringList(), tempFile ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::createNewWindowASN( const QString &url, const QString &mimetype, + const QCString& startup_id, bool tempFile ) +{ + kapp->setStartupId( startup_id ); + return createNewWindow( url, mimetype, tempFile ); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfile( const QString &path ) +{ + qt_x_user_time = 0; + kdDebug(1202) << "void KonquerorIface::createBrowserWindowFromProfile( const QString &path ) " << endl; + kdDebug(1202) << path << endl; + KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, QString::null ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfileASN( const QString &path, const QCString& startup_id ) +{ + kapp->setStartupId( startup_id ); + return createBrowserWindowFromProfile( path ); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfile( const QString & path, const QString &filename ) +{ + qt_x_user_time = 0; + kdDebug(1202) << "void KonquerorIface::createBrowserWindowFromProfile( path, filename ) " << endl; + kdDebug(1202) << path << "," << filename << endl; + KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, filename ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfileASN( const QString &path, const QString &filename, + const QCString& startup_id ) +{ + kapp->setStartupId( startup_id ); + return createBrowserWindowFromProfile( path, filename ); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfileAndURL( const QString & path, const QString &filename, const QString &url ) +{ + qt_x_user_time = 0; + KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, filename, KURL(url) ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfileAndURLASN( const QString & path, const QString &filename, const QString &url, + const QCString& startup_id ) +{ + kapp->setStartupId( startup_id ); + return createBrowserWindowFromProfileAndURL( path, filename, url ); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfileAndURL( const QString &path, const QString &filename, const QString &url, const QString &mimetype ) +{ + qt_x_user_time = 0; + KParts::URLArgs args; + args.serviceType = mimetype; + KonqMainWindow *res = KonqMisc::createBrowserWindowFromProfile( path, filename, KURL(url), args ); + if ( !res ) + return DCOPRef(); + return res->dcopObject(); +} + +DCOPRef KonquerorIface::createBrowserWindowFromProfileAndURLASN( const QString & path, const QString &filename, const QString &url, const QString &mimetype, + const QCString& startup_id ) +{ + kapp->setStartupId( startup_id ); + return createBrowserWindowFromProfileAndURL( path, filename, url, mimetype ); +} + + +void KonquerorIface::reparseConfiguration() +{ + KGlobal::config()->reparseConfiguration(); + KonqFMSettings::reparseConfiguration(); + + QPtrList *mainWindows = KonqMainWindow::mainWindowList(); + if ( mainWindows ) + { + QPtrListIterator it( *mainWindows ); + for (; it.current(); ++it ) + it.current()->reparseConfiguration(); + } +} + +void KonquerorIface::updateProfileList() +{ + QPtrList *mainWindows = KonqMainWindow::mainWindowList(); + if ( !mainWindows ) + return; + + QPtrListIterator it( *mainWindows ); + for (; it.current(); ++it ) + it.current()->viewManager()->profileListDirty( false ); +} + +QString KonquerorIface::crashLogFile() +{ + return KonqMainWindow::s_crashlog_file->name(); +} + +QValueList KonquerorIface::getWindows() +{ + QValueList lst; + QPtrList *mainWindows = KonqMainWindow::mainWindowList(); + if ( mainWindows ) + { + QPtrListIterator it( *mainWindows ); + for (; it.current(); ++it ) + lst.append( DCOPRef( kapp->dcopClient()->appId(), it.current()->dcopObject()->objId() ) ); + } + return lst; +} + +void KonquerorIface::addToCombo( QString url, QCString objId ) +{ + KonqMainWindow::comboAction( KonqMainWindow::ComboAdd, url, objId ); +} + +void KonquerorIface::removeFromCombo( QString url, QCString objId ) +{ + KonqMainWindow::comboAction( KonqMainWindow::ComboRemove, url, objId ); +} + +void KonquerorIface::comboCleared( QCString objId ) +{ + KonqMainWindow::comboAction( KonqMainWindow::ComboClear, + QString::null, objId ); +} + +bool KonquerorIface::processCanBeReused( int screen ) +{ + if( qt_xscreen() != screen ) + return false; // this instance run on different screen, and Qt apps can't migrate + if( KonqMainWindow::isPreloaded()) + return false; // will be handled by preloading related code instead + QPtrList* windows = KonqMainWindow::mainWindowList(); + if( windows == NULL ) + return true; + QStringList allowed_parts = KonqSettings::safeParts(); + bool all_parts_allowed = false; + + if( allowed_parts.count() == 1 && allowed_parts.first() == QString::fromLatin1( "SAFE" )) + { + allowed_parts.clear(); + // is duplicated in client/kfmclient.cc + allowed_parts << QString::fromLatin1( "konq_iconview.desktop" ) + << QString::fromLatin1( "konq_multicolumnview.desktop" ) + << QString::fromLatin1( "konq_sidebartng.desktop" ) + << QString::fromLatin1( "konq_infolistview.desktop" ) + << QString::fromLatin1( "konq_treeview.desktop" ) + << QString::fromLatin1( "konq_detailedlistview.desktop" ); + } + else if( allowed_parts.count() == 1 && allowed_parts.first() == QString::fromLatin1( "ALL" )) + { + allowed_parts.clear(); + all_parts_allowed = true; + } + if( all_parts_allowed ) + return true; + for( QPtrListIterator it1( *windows ); + it1 != NULL; + ++it1 ) + { + kdDebug(1202) << "processCanBeReused: count=" << (*it1)->viewCount() << endl; + const KonqMainWindow::MapViews& views = (*it1)->viewMap(); + for( KonqMainWindow::MapViews::ConstIterator it2 = views.begin(); + it2 != views.end(); + ++it2 ) + { + kdDebug(1202) << "processCanBeReused: part=" << (*it2)->service()->desktopEntryPath() << ", URL=" << (*it2)->url().prettyURL() << endl; + if( !allowed_parts.contains( (*it2)->service()->desktopEntryPath())) + return false; + } + } + return true; +} + +void KonquerorIface::terminatePreloaded() +{ + if( KonqMainWindow::isPreloaded()) + kapp->exit(); +} diff --git a/konqueror/KonquerorIface.h b/konqueror/KonquerorIface.h new file mode 100644 index 000000000..ba5fd41dd --- /dev/null +++ b/konqueror/KonquerorIface.h @@ -0,0 +1,189 @@ +/* This file is part of the KDE project + Copyright (C) 2000 Simon Hausmann + Copyright (C) 2000 David Faure + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public + License as published by the Free Software Foundation; either + version 2 of the License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. If not, write to + the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. +*/ + +#ifndef __KonquerorIface_h__ +#define __KonquerorIface_h__ + +#include +#include +#include + +#include +/** + * DCOP interface for konqueror + */ +class KonquerorIface : virtual public DCOPObject +{ + K_DCOP +public: + + KonquerorIface(); + ~KonquerorIface(); + +k_dcop: + + /** + * Opens a new window for the given @p url (using createSimpleWindow, i.e. a single view) + */ + DCOPRef openBrowserWindow( const QString &url ); + /** + * Like @ref openBrowserWindow , with setting the application startup notification ( ASN ) + * property on the window. + */ + DCOPRef openBrowserWindowASN( const QString &url, const QCString &startup_id ); + + /** + * Opens a new window for the given @p url (using createNewWindow, i.e. with an appropriate profile) + */ + DCOPRef createNewWindow( const QString &url ); + /** + * Like @ref createNewWindow , with setting the application startup notification ( ASN ) + * property on the window. + */ + DCOPRef createNewWindowASN( const QString &url, const QCString &startup_id, bool tempFile ); + + /** + * Opens a new window like @ref createNewWindow, then selects the given @p filesToSelect + */ + DCOPRef createNewWindowWithSelection( const QString &url, QStringList filesToSelect ); + /** + * Like @ref createNewWindowWithSelection, with setting the application startup notification ( ASN ) + * property on the window. + */ + DCOPRef createNewWindowWithSelectionASN( const QString &url, QStringList filesToSelect, const QCString &startup_id ); + + /** + * Opens a new window for the given @p url (using createNewWindow, i.e. with an appropriate profile) + * @param mimetype to speed it up. + */ + DCOPRef createNewWindow( const QString &url, const QString & mimetype, bool tempFile ); + /** + * Like @ref createNewWindow , with setting the application startup notification ( ASN ) + * property on the window. + */ + DCOPRef createNewWindowASN( const QString &url, const QString & mimetype, + const QCString &startup_id, bool tempFile ); + + /** + * As the name says, this creates a window from a profile. + * Used for instance by khelpcenter. + */ + DCOPRef createBrowserWindowFromProfile( const QString &path ); + /** + * Like @ref createBrowserWindowFromProfile , with setting the application startup + * notification ( ASN ) property on the window. + */ + DCOPRef createBrowserWindowFromProfileASN( const QString &path, const QCString &startup_id ); + + /** + * As the name says, this creates a window from a profile. + * Used for instance by kfmclient. + * @param path full path to the profile file + * @param filename name of the profile file, if under the profiles dir + */ + DCOPRef createBrowserWindowFromProfile( const QString &path, const QString &filename ); + /** + * Like @ref createBrowserWindowFromProfile , with setting the application startup + * notification ( ASN ) property on the window. + */ + DCOPRef createBrowserWindowFromProfileASN( const QString &path, const QString &filename, + const QCString &startup_id ); + + /** + * Creates a window from a profile and a URL. + * Used by kfmclient to open http URLs with the webbrowsing profile + * and others with the filemanagement profile. + * @param path full path to the profile file + * @param filename name of the profile file, if under the profiles dir + * @param url the URL to open + */ + DCOPRef createBrowserWindowFromProfileAndURL( const QString &path, const QString &filename, const QString &url ); + /** + * Like @ref createBrowserWindowFromProfileAndURL , with setting the application startup + * notification ( ASN ) property on the window. + */ + DCOPRef createBrowserWindowFromProfileAndURLASN( const QString &path, const QString &filename, const QString &url, + const QCString &startup_id ); + + /** + * Creates a window the fastest way : the caller has to provide + * profile, URL, and mimetype. + * @param path full path to the profile file + * @param filename name of the profile file, if under the profiles dir + * @param url the URL to open + * @param mimetype the mimetype that the URL we want to open has + */ + DCOPRef createBrowserWindowFromProfileAndURL( const QString &path, const QString &filename, const QString &url, const QString &mimetype ); + /** + * Like @ref createBrowserWindowFromProfileAndURL , with setting the application startup + * notification ( ASN ) property on the window. + */ + DCOPRef createBrowserWindowFromProfileAndURLASN( const QString &path, const QString &filename, const QString &url, const QString &mimetype, + const QCString& startup_id ); + + /** + * Called by kcontrol when the global configuration changes + */ + ASYNC reparseConfiguration(); + + /** + * @return the name of the instance's crash log file + */ + QString crashLogFile(); + + /** + * @return a list of references to all the windows + */ + QValueList getWindows(); + + /** + * Called internally as broadcast when the user adds/removes/renames a view profile + */ + ASYNC updateProfileList(); + + /** + * Called internally as broadcast when a URL is to be added to the combobox. + */ + ASYNC addToCombo( QString, QCString ); + + /** + * Called internall as broadcast when a URL has to be removed from the combo. + */ + ASYNC removeFromCombo( QString, QCString ); + + /** + * Called internally as a broadcast when the combobox was cleared. + */ + ASYNC comboCleared( QCString ); + + /** + * Used by kfmclient when the 'minimize memory usage' setting is set + * to find out if this konqueror can be used. + */ + bool processCanBeReused( int screen ); + + /** + * Called from konqy_preloader to terminate this Konqueror instance, + * if it's in the preloaded mode, and there are too many preloaded Konqy's + */ + ASYNC terminatePreloaded(); +}; + +#endif diff --git a/konqueror/Makefile.am b/konqueror/Makefile.am new file mode 100644 index 000000000..0fd86b2f5 --- /dev/null +++ b/konqueror/Makefile.am @@ -0,0 +1,105 @@ +AM_CPPFLAGS = -D_LARGEFILE64_SOURCE + +INCLUDES = -I$(top_srcdir)/libkonq -I$(top_srcdir)/kcontrol/input $(all_includes) + +SUBDIRS = . client iconview listview keditbookmarks shellcmdplugin about pics sidebar preloader quickprint remoteencodingplugin kttsplugin + +bin_PROGRAMS = +lib_LTLIBRARIES = +kdeinit_LTLIBRARIES = konqueror.la + +noinst_LTLIBRARIES = libkonqueror_intern.la +konqdatadir = $(kde_datadir)/konqueror +konqdata_DATA = konqueror.rc konq-simplebrowser.rc + +kde_apps_DATA = konqueror.desktop + +# servicetypedir = $(kde_servicetypesdir) +# servicetype_DATA = konq_metaview.desktop + +METASOURCES = AUTO + +include_HEADERS = KonquerorIface.h + +libkonqueror_intern_la_SOURCES = konq_settingsxt.kcfgc +konqueror_la_SOURCES = konq_main.cc \ + KonquerorIface.cc KonquerorIface.skel \ + KonqMainWindowIface.cc KonqMainWindowIface.skel \ + KonqViewIface.cc KonqViewIface.skel \ + konq_guiclients.cc \ + konq_run.cc konq_view.cc konq_viewmgr.cc \ + konq_misc.cc \ + konq_frame.cc \ + konq_tabs.cc \ + konq_actions.cc \ + konq_profiledlg.cc \ + konq_factory.cc \ + konq_combo.cc \ + konq_browseriface.cc \ + delayedinitializer.cc \ + konq_mainwindow.cc \ + konq_extensionmanager.cc + +konqueror_la_PCH = AUTO + +noinst_HEADERS = KonqMainWindowIface.h KonqViewIface.h delayedinitializer.h \ + konq_actions.h konq_browseriface.h konq_combo.h konq_factory.h \ + konq_frame.h konq_tabs.h konq_guiclients.h konq_main.h konq_mainwindow.h \ + konq_misc.h konq_openurlrequest.h konq_profiledlg.h konq_run.h \ + konq_view.h konq_viewmgr.h konq_extensionmanager.h version.h + +konqueror_la_LDFLAGS = -module $(KDE_PLUGIN) $(all_libraries) +konqueror_la_LIBADD = ../libkonq/libkonq.la libkonqueror_intern.la $(LIBMALLOC) $(LIB_KUTILS) + +# Hmm, this experiment of a static konq failed, don't trust it... +# (but feel free to fix it :) + +# Note that you need to --enable-debug in kdelibs and kdebase, +# then make clean ; make install in kdelibs and libkonq, +# and make clean ; make konqueror_static in here. +#check_PROGRAMS = konqueror_static +# +#konqueror_static_SOURCES = dummy.cc +#konqueror_static_LDADD = konqueror.la *view/*.la dirtree/*.la $(libdir)/libkhtml.la +#konqueror_static_LDFLAGS = $(all_libraries) -static + +messages: rc.cpp + $(EXTRACTRC) *.rc */*.rc >> rc.cpp + $(EXTRACTRC) sidebar/trees/history_module/history_dlg.ui >> rc.cpp + $(XGETTEXT) -kaliasLocal rc.cpp *.h *.cc *view/*h *view/*cc kedit*/*.h kedit*/*.cpp about/*.h about/*.cc remoteencodingplugin/*.cpp remoteencodingplugin/*.h shellcmdplugin/*.cpp -o `find sidebar -name "*.cpp"` `find sidebar -name "*.h"` -o $(podir)/konqueror.pot + +xdg_apps_DATA = kfmclient.desktop kfmclient_dir.desktop kfmclient_html.desktop \ + kfmclient_war.desktop konqbrowser.desktop konquerorsu.desktop Home.desktop + +konq_data4_DATA = konqfilemgr.desktop +konq_data4dir = $(kde_appsdir)/.hidden + +kde_kcfg_DATA = konqueror.kcfg + +####### Build rules +KonquerorIface.lo: konq_settingsxt.h +konq_actions.lo: konq_settingsxt.h +konq_guiclients.lo: konq_settingsxt.h +konq_main.lo: konq_settingsxt.h +konq_mainwindow.lo: konq_settingsxt.h +konq_profiledlg.lo: konq_settingsxt.h +konq_settingsxt.lo: konq_settingsxt.h +konq_tabs.lo: konq_settingsxt.h +konq_view.lo: konq_settingsxt.h +konq_viewmgr.lo: konq_settingsxt.h + +# Use a hand-made rule for profiles because they are renamed upon installation +profiledir = $(kde_datadir)/konqueror/profiles +install-data-local: + $(mkinstalldirs) $(DESTDIR)$(profiledir) + $(INSTALL_DATA) $(srcdir)/profile_webbrowsing.desktop $(DESTDIR)$(profiledir)/webbrowsing + $(INSTALL_DATA) $(srcdir)/profile_filemanagement.desktop $(DESTDIR)$(profiledir)/filemanagement + $(INSTALL_DATA) $(srcdir)/profile_midnightcommander.desktop $(DESTDIR)$(profiledir)/midnightcommander + $(INSTALL_DATA) $(srcdir)/profile_tabbedbrowsing.desktop $(DESTDIR)$(profiledir)/tabbedbrowsing + $(INSTALL_DATA) $(srcdir)/profile_kde_devel.desktop $(DESTDIR)$(profiledir)/kde_devel + $(INSTALL_DATA) $(srcdir)/profile_simplebrowser.desktop $(DESTDIR)$(profiledir)/simplebrowser + +# $(INSTALL_DATA) $(srcdir)/profile_filepreview.desktop $(DESTDIR)$(profiledir)/filepreview + +uninstall-local: + -rm -f $(DESTDIR)$(profiledir)/webbrowsing $(DESTDIR)$(profiledir)/filemanagement $(DESTDIR)$(profiledir)/midnightcommander $(DESTDIR)$(profiledir)/filepreview diff --git a/konqueror/TODO b/konqueror/TODO new file mode 100644 index 000000000..725abeb4a --- /dev/null +++ b/konqueror/TODO @@ -0,0 +1,49 @@ +KIconView: +========== + +- When you are adding to the selection (eg. by shift + LMB) + then change the mouse cursor to indicate this. Several drawing programs do + this by adding a '+' to the normal mouse cursor and it makes them a lot more usable. + [ I'm not sure this is necessary, and if yes it's a QIconView issue anyway - David ] + +libkonq: +======== + +- delete file : if image, remove from thumbnails dir + +- ordering templates: Find a way to use KServiceGroup for this, + or "borrow" the code... + +konqueror framework: +==================== + +- Remove highlighted text color and text color from kcmkonq, and settings. + +- Do we want "[X] Use directory properties" ? + +iconview+listviews: +=================== + +- Hide backup files (files ending in ~ or #) - see #3212 + +- if we keep "background color for this directory" should we have "text color for +this directory" too... ? + +dirtree: +======== + +- Create dynamic items when browsing non-local URLs (FTP etc.) + +kpropsdlg (kfile): +====== + +- Maybe add GUI (in kpropertiesdialog probably) for user defined actions in .desktop +files (example: see eject action in the CDROM template) ? + +- Maybe a checkbox for the appstart-notification thing ? + +kdesktop: +========= + +- Different icons on different desktops (i.e. different directories, Desktop[1-N], +the Desktop one being the 'sticky' icons) diff --git a/konqueror/about/Makefile.am b/konqueror/about/Makefile.am new file mode 100644 index 000000000..b8293c098 --- /dev/null +++ b/konqueror/about/Makefile.am @@ -0,0 +1,17 @@ +kde_module_LTLIBRARIES = konq_aboutpage.la + +INCLUDES = -I$(srcdir)/.. -I$(top_srcdir)/libkonq $(all_includes) +konq_aboutpage_la_SOURCES = konq_aboutpage.cc +konq_aboutpage_la_LDFLAGS = $(all_libraries) $(KDE_PLUGIN) -module +konq_aboutpage_la_LIBADD = $(LIB_KHTML) + +kde_services_DATA = konq_aboutpage.desktop +kde_servicetypes_DATA = konqaboutpage.desktop + +METASOURCES = AUTO + +konq_aboutpage_datadir = $(kde_datadir)/konqueror/about +konq_aboutpage_data_DATA = \ + box-centre-konqueror.png top-right-konqueror.png lightning.png \ + launch.html intro.html specs.html tips.html \ + plugins.html plugins_rtl.html konq.css diff --git a/konqueror/about/box-centre-konqueror.png b/konqueror/about/box-centre-konqueror.png new file mode 100644 index 000000000..2bc6e9fa8 Binary files /dev/null and b/konqueror/about/box-centre-konqueror.png differ diff --git a/konqueror/about/intro.html b/konqueror/about/intro.html new file mode 100644 index 000000000..a8cfb5af5 --- /dev/null +++ b/konqueror/about/intro.html @@ -0,0 +1,89 @@ + + + + + + + + + + %1 + + + +