1
0
mirror of https://github.com/irssi/irssi.git synced 2024-11-03 04:27:19 -05:00
Commit Graph

73 Commits

Author SHA1 Message Date
ailin-nemui
3c1bc5f916
Merge pull request #836 from ailin-nemui/resize
Fix resizing of windows when used incorrectly
2018-02-05 22:25:33 +01:00
ailin-nemui
b33ce255a9 check for negative bound 2018-02-04 11:34:20 +01:00
ailin-nemui
5b5bfef035 check the error condition of mainwindow_create 2018-02-02 10:05:37 +01:00
ailin-nemui
f0bd434eb0 stop the madness 2018-02-02 09:50:08 +01:00
ailin-nemui
ded4e4d98d fix redraw 2018-01-06 01:05:35 +01:00
ailin-nemui
4e71a1f485 sideways split support for Irssi
warning:

* may be buggy

This commit adds support for sideways splits into Irssi. To that regard,
there are a number of new commands available

the "R" commands:
	/window new rsplit - make a new sideways split
	/window rshow - show an existing window to the right
	/window rgrow/rshrink/rsize/rbalance
	 - manipulate the size of your sideways split windows

the "D" commands:
	/window dup/ddown/dleft/dright
	 - navigate the windows directionally, as an alternative to
	   /window up/down that you can bind to some key
	/window move dleft/dright - the same for moving

Enjoy!
2018-01-06 00:26:48 +01:00
Emanuele Giaquinta
02aa2682dc Fix crash in mainwindows_resize_smaller when the 'mainwindows' list is empty.
The crash can happen if the terminal height decreases before the first window
is created. Based on a patch by Jaroslav Škarvada (red hat bug #796457).


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5217 dbcabf3a-b0e7-0310-adc4-f8d773084564
2012-06-24 14:33:54 +00:00
Alexander Færøy
c561ba35e6 Code Cleanup:
Use g_string_append_printf() instead of g_string_sprintfa() (which is considered deprecated.)


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5003 dbcabf3a-b0e7-0310-adc4-f8d773084564
2009-02-08 17:22:42 +00:00
Emanuele Giaquinta
48d0135d3e Make some functions static.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4956 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-08 17:11:00 +00:00
Emanuele Giaquinta
770c906a1c Simplify.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4954 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-08 16:32:56 +00:00
Emanuele Giaquinta
43bed5bb09 Simplify and remove dead code.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4949 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-07 15:49:04 +00:00
Emanuele Giaquinta
04a028d8c9 Simplify and remove dead code, MAIN_WINDOW_TEXT_HEIGHT(rec) >= WINDOW_MIN_SIZE
always holds.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4948 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-06 17:02:27 +00:00
Emanuele Giaquinta
fe9b63ef65 Always preserve the active mainwindow in mainwindows_resize_smaller,
prompted by report by Henri Kemppainen.


git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4947 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-06 12:36:41 +00:00
Emanuele Giaquinta
a644a200c1 Fix leak introduced in r1855.
git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@4946 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-12-06 12:29:51 +00:00
Emanuele Giaquinta
72930e0be3 Use g_ascii_str{,n}casecmp for case insensitive comparison with
ascii only strings.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4739 dbcabf3a-b0e7-0310-adc4-f8d773084564
2008-03-09 12:17:55 +00:00
Wouter Coekaerts
9c2d621cc6 Oops. Update address correctly now.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4490 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-08 18:41:10 +00:00
Wouter Coekaerts
023026e12b Update FSF address
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4489 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-05-08 18:16:58 +00:00
Emanuele Giaquinta
827696bbb9 Forbid "window show" when the target window is sticky rather than when there is
at least one window bound to the container of the target window.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@4436 dbcabf3a-b0e7-0310-adc4-f8d773084564
2007-04-05 18:25:29 +00:00
Timo Sirainen
4405092282 potential crashfix
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3173 dbcabf3a-b0e7-0310-adc4-f8d773084564
2003-11-17 18:13:17 +00:00
Timo Sirainen
8e29932db3 crashfix when quitting
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3165 dbcabf3a-b0e7-0310-adc4-f8d773084564
2003-11-17 00:18:40 +00:00
Timo Sirainen
ae5b5f38bd Crashfix when sometimes closing a split window.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@3123 dbcabf3a-b0e7-0310-adc4-f8d773084564
2003-07-09 21:46:08 +00:00
Timo Sirainen
015d87579c Show window's scroll state with /WINDOW.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2526 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-02-22 13:12:33 +00:00
Timo Sirainen
f8221db7ca When resizing terminal, width of all split windows weren't always updated
properly.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2364 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-02-01 19:26:58 +00:00
Timo Sirainen
f4897860b5 toupper(), tolower(), isspace(), is..etc..() aren't safe with chars in some
systems, use our own is_...() functions now instead.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2348 dbcabf3a-b0e7-0310-adc4-f8d773084564
2002-01-27 20:45:59 +00:00
Timo Sirainen
6a1f6b560f Still some window closing bugs/crashes.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2225 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-12-09 14:03:44 +00:00
Timo Sirainen
54a933f29c Small focus bugfix when closing a split window.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2220 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-12-07 23:26:46 +00:00
Timo Sirainen
1b8a5a866d Fixed some problems with mainwindow resizing not affecting the subwindows.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2219 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-12-07 23:20:23 +00:00
Timo Sirainen
615efbcc79 /WINDOW STICK <ref#> OFF didn't work.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2126 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-20 03:38:53 +00:00
Timo Sirainen
275c04a6aa Irssi didn't redraw the screen properly when split windows were created but
were never set active.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2119 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-20 02:43:43 +00:00
Timo Sirainen
23fe491e84 /WINDOW DOWN and /WINDOW UP now cycle to highest/lowest window.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2024 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-15 20:49:12 +00:00
Timo Sirainen
e577b8a771 Closing last non-sticky window didn't destroy the split window.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1995 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-12 17:39:01 +00:00
Timo Sirainen
e261b422ec /WINDOW BALANCE was buggy sometimes - thanks to poptix for finding it :)
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1992 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-11-12 13:53:58 +00:00
Timo Sirainen
2500457729 Windows weren't created with correct size. When setting statusbar lines for
windows, irssi didn't resize the window properly.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1940 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-29 18:42:42 +00:00
Timo Sirainen
fb439b5c2a Redrawing fixes - irssi should now rarely redraw stuff uselessly in screen.
Most of the code now just marks the window/statusbar/etc. as dirty, and lets
the dirty-checker handle it later.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1926 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-28 18:40:12 +00:00
Timo Sirainen
2ba339a26b Added support for using terminfo/termcap instead of curses. By default,
configure chooses to use ncurses if found, of terminfo if only curses was
found. --with-terminfo parameter can be used to specify if you want it or
not.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1924 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-28 11:30:26 +00:00
Timo Sirainen
319e852bb4 window-top-statusbars weren't working properly.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1907 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-24 13:57:54 +00:00
Timo Sirainen
17f4d6b5de added mainwindow_resize_freeze() and .._thaw() functions to temporarily
freeze all window resizes. It's now being used with statusbar code so
changing between split windows don't make the screen jump around.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1860 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-20 14:30:20 +00:00
Timo Sirainen
69dccf4a67 When resizing terminal smaller, destroy some split windows if they don't fit
into screen otherwise. Also, irssi doesn't crash anymore or mess up the
screen even if terminal is resized to 1x1 size (not sure of 0x0, my terminal
doesn't resize that small, and maybe I shouldn't bother with it anyway :)


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1855 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-20 10:35:42 +00:00
Timo Sirainen
113486564f Fixed restoring split windows layout. Some other split window resizing fixes
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1854 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-20 10:01:29 +00:00
Timo Sirainen
980bd19808 mainwindow_set_statusbar_lines() resized only active window - not all
windows in that main window.. This made screen mess up for example with
/RELOAD.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1844 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-15 20:18:34 +00:00
Timo Sirainen
1718083cf6 Resizing terminal works now properly, also sends "terminal resized" signal
now.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1830 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-14 10:45:00 +00:00
Timo Sirainen
dbe49236d2 Configurable statusbar - see default config file (irssi.conf) for example
how to configure it. Added %> format which clears to end of line using the
current bg color. Added support for multiple input lines (just the core, not
used anywhere yet).


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1821 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-10-13 16:11:13 +00:00
Timo Sirainen
8e3005a1c1 /WINDOW MOVE UP|DOWN might have crashed.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1780 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-09-09 12:12:28 +00:00
Timo Sirainen
cac1cbf2cf mainwindow_set_size() called mainwindow_shrink() improperly.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1775 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-08-31 20:27:43 +00:00
Timo Sirainen
a99458ebe5 /WINDOW BALANCE didn't work properly when topicbar was off. Added a few
comments to mainwindows.h


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1716 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-08-08 14:43:14 +00:00
Timo Sirainen
45bb5c3cee Restoring layout for split windows works betters now. Some sticky window
changes/fixes. Renamed /WINDOW MOVE LEFT|RIGHT -> PREV|NEXT, added commands
/WINDOW MOVE UP|DOWN|LEFT|RIGHT. The new LEFT|RIGHT now moves the window
only inside split windows. mainwindows-save.c -> mainwindows-layout.c


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1710 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-08-07 12:41:10 +00:00
Timo Sirainen
80793ace1c /WINDOW STICK changes - If ref# is given and it's in another split window,
it's moved to the active split window - even if the window was already
sticky in the other one.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1702 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-08-03 23:39:35 +00:00
Timo Sirainen
ce0bd80b05 Added sticky window information to /WINDOW.
git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1701 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-08-03 22:54:08 +00:00
Timo Sirainen
05777636a7 Replaced all direct curses calls with screen_xx() wrappers. This should
enable us to optionally use termcap directly.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1535 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-06-01 21:49:07 +00:00
Timo Sirainen
e403244a2d Resizing window destroyed curses window, but didn't update the view's curses
window which kept using the old one, and probably crashed soon.


git-svn-id: http://svn.irssi.org/repos/irssi/trunk@1532 dbcabf3a-b0e7-0310-adc4-f8d773084564
2001-06-01 19:12:07 +00:00